数据接收倒是好办,上线回调之后马上调用读取数据,在数据回调中再次调用读取数据就是了
发送数据之前想的是可能跟Java和C#一样是同步发送数据,这样的话容易导致阻塞(大数据)。就做了一个线程来循环发送数据,结果报错
Attempting to access AsyncSocket instance from incorrect thread.
网上是说AsyncSocket不是线程安全的,用到了一个什么runloop。无法跨线程使用,如果要跨线程可以改下源码,有个"DEBUG_THREAD_SAFETY"的变量可以更改。但是不保证能正常运行,可能会报错。
查看源码之后发现,本身AsyncSocket的数据发送就是异步的,是放到队列中,使用线程发送的,所以我们没有必要再做一次异步。直接调用writeData方法发送数据就行了