我正在为我的公司在 Windows CE 设备的 Compact Framework 2.0 上编写一个相对较大的应用程序,并且我正在使用单个 CPU 内核。
在不深入细节的情况下,与套接字无关的工作在最坏的情况下可以同时运行 10 个左右的线程。
考虑到这一点,我第一次在一个小型测试应用程序中使用套接字。这个更大的应用程序可能会与同一 IP 地址上的 7 个不同端口通信(例如明显错误的 IP,1.2.3.4:4000、1.2.3.4:4001、1.2.3.4:4002 等),因此使用 7 个不同的套接字对象。
Compact Framework 2、1 个 CPU 内核、在最坏的情况下大约有 10 个非套接字线程,以及 7 个用于编程发送能力和连续接收(以尽快处理/响应)的套接字。
我一直在考虑异步套接字编程是否只会给我带来麻烦,对于 Compact Framework 2.0,默认的最大线程数是 25(每个内核),本质上我必须得到多么“聪明”。
你有什么建议?异步或同步套接字编程,以及您建议的任何特定附加细节,或者如果我什么都不担心。