我们假设,我有一个自定义服务器,它监听某个端口上的连接,一旦收到连接,它就开始发送数据(一种记录器)。这是第一个问题:
它可以只是二进制数据吗?实际上,我只需要两个非零的8位值,而我正在考虑使用0值字节来分隔每个新的数据部分。
这三个字节将被发送一次或者可能是每秒两次。
所以,现在我正在寻找Swift 2中的一些代码片段来正确读取这些数据。通常,我希望打电话
connectSocket(IP,port)
将连接到套接字,一旦收到第一个数据块,
socketCallBack()
被称为,或类似的东西。
直观地说,我不喜欢在while(true)循环中检查数据的想法。或者这是正确的方法吗?
我见过一个例子,当它第一次向服务器发送'get'请求并立即开始等待响应时。也许,我可以使用计时器,每秒一次调用它?这是对的吗?
我关心的是交通。现在我已经通过网络服务器对其进行了修改,但我不喜欢它为那些开销的http数据花费了太多的流量。
可能,定时器上的tcp连接会少得多,如果我在开始时只建立一个连接并在此连接中传输数据,那么它将节省更多的流量。我对吗?