的问题是我需要的服务器单独的线程
没有,有一个异步API来侦听传入的数据。你可以通过轮询一个线程列表来查看哪些新数据在等待,很明显是从工作线程完成的。
据我了解,当过客户端发送数据到服务器,若服务器不与任何 数据进行响应,客户端应用程序不会让我发送更多的数据,服务器根本不会接收他们。
这是比套接字工作方式更多的废话编程。在同一时间发送和接收方向上,套接字完全可以与流式传输协议完全兼容。
我怎样才能让服务器发送命令在单独的线程客户端的“DoChat” 功能
WEL之外,我diong你的工作需要花钱。
但是:这个例子被推迟了。作为完全反模式。每个客户端一个线程?一旦有1000多个客户端连接,您将遇到memroy问题和perforamnce问题。你会得到大量的上下文切换。
其次,客户端不是异步的,因为它不是这样写的。 Mayy我向文档建议giong,阅读sockts并试图自己创建它?那么回来的问题不仅仅是“我只是试图复制粘贴”。
通过适当的编程,这是完全正常的。我在开发中有一个类似的应用程序,将数据发送到客户端并从客户端获取命令以修改数据流。作品具有魅力。
如果我以数据以太方式发送数据,是否需要为tcpclient“确认”数据?
是和否。不,不适用于TCP - TCP是否会在引擎盖下握手。是的,如果你的协议决定必须这样做,这是程序员级别的设计决定。根据数据的内容,它可能也可能不是必需的。有时候,确认提供了更多的信息(时间戳服务器端,跟踪数字),并不纯粹是因为“我明白了”。