【发布时间】:2013-06-30 17:47:21
【问题描述】:
我有一个发送者线程和 40 个工作线程。有一个队列。所有 40 个线程都写入队列,发送者线程定期从共享队列中读取数据,并通过 tcp 套接字发送读取的数据(比如每 1 秒后,发送者线程必须从队列中读取数据并通过套接字发送)。我有一个问题:
- 如果 40 个线程中的任何一个处于临界区,并且所有其他线程也在等待进入临界区,同时 1 秒计时器到了,我想忽略所有其他线程的进入临界区的请求临界区,并且 Sender 线程现在必须被赋予优先级并且必须被赋予临界区。
换句话说,我想将发送者线程的优先级设置为 1,即当发送者线程调用 EnterCriticalSection() 时,必须忽略所有其他等待进入临界区的线程,并且一旦临界区空闲,它必须交给发送者线程。 有没有办法实现这个功能?
【问题讨论】:
标签: c windows multithreading winapi tcp