擅长:python、mysql、java
<p>好吧,这是最终的答案。在这个例子中,我甚至不需要上下文的实例。那样好多了。在</p>
<p>下面的代码在C中创建一个类似的raise_on_timeout方法。在</p>
<pre><code>public static void RaiseOnTimeout(Socket sock, TimeSpan timeout)
{
List<PollItem> pollItemsList = new List<PollItem>();
PollItem pollItem = sock.CreatePollItem(IOMultiPlex.POLLIN);
pollItemsList.Add(pollItem);
int numReplies = Context.Poller(pollItemsList.ToArray(), timeout.Value.Ticks * 10);
if (numReplies == 0)
{
throw new TimeoutException();
}
}
</code></pre>