如何使用套接字(状态对象)

时间:2012-10-29 16:34:35

标签: c# sockets asynchronous

我正在学习套接字,以及如何为服务器和客户端创建代码。

(顺便说一句,我正在做异步服务器和客户端套接字)。

我真正理解的是,当新客户端连接到服务器时,我创建了一个新的StateObject。这是一个自定义类,包含一些字段,如实际的Socket和缓冲区(指定长度的byte [])。

  • 所以,只要客户端已连接,或者我不需要,我就不得不继续检查这个状态对象的实例?

  • 接收完成后是否关闭和关闭套接字(这两种方法)?

  • 如何创建所有客户端的列表?我是否必须创建这些状态对象的集合?

-

我问,因为我真的不了解异步套接字的真正工作,即使我花了几天时间。

如果我确实创建了这些状态对象的列表,并且在foreach循环中尝试将数据发送到其中的每个(实际上是一个接一个),那么一直困惑(实际上它仍然存在),它只是没发送。

-

添加了:

是否足以通过创建List来跟踪所有客户端,其中T将是Socket类?状态对象怎么样?它是否仅在传递数据时使用:

    服务器端的
  • (当新数据到达时);

  • 在客户端(新数据到达时)

提前回答。

米蒂亚

0 个答案:

没有答案