【发布时间】:2014-01-06 04:15:14
【问题描述】:
我正在运行一个完全可操作的 IOCP TCP 套接字应用程序。今天我在考虑关键部分的设计,现在我脑子里有一个没完没了的问题:全局还是每个客户的关键部分?我来到这里是因为我看到如果每个线程都依赖于一个锁,那么使用多个工作线程是没有意义的,对吧?我的意思是...现在我没有看到 100 个并发客户端有任何性能问题,但如果是 10000 个呢?
我的共享资源是每个客户端预分配的结构,因此,每个客户端都有自己的 IO 上下文、套接字和东西。没有客户端间资源共享,所以我认为这是使用每个客户端 CS 的另一点。我使用一个接受线程和 8 个(处理器 * 2)工作线程。此应用程序基本上是为小型(
【问题讨论】:
-
也许 - 答案取决于很多特定于您的问题和特定于您的设计的信息。
标签: c++ multithreading sockets iocp