2

工作代码在这里

static MessageSender TopicClient;
public static void SendTopicMessage(BrokeredMessage message)
{
 IAsyncResult result = TopicClient.BeginSend(message, processEndSend, TopicClient);
 Thread.Sleep(5000);
}
public static void processEndSend(IAsyncResult result)
{
  MessageSender messageSender = result.AsyncState as MessageSender;
  messageSender.EndSend(result);
}

上面的代码正在工作。但是我不知道为什么要放 Thread.Sleep()。我不想保留 Thread.Sleep()。但它不起作用我删除了 Thread.Sleep()。有什么建议吗?

4

1 回答 1

0

我认为您正在从线程中调用 SendTopicMessage ...

因此,如果您在此处删除 Sleep(),您的线程在发送您的第一条消息后终止...如果您放置 Sleep(5000),您将在 5 秒的时间内发送下一条消息,以便线程保持活动状态。

我认为你正在设计糟糕的架构。纠正我如果我错了。

为了清楚地了解您的流程...请发布足够的代码片段...

于 2013-01-28T14:33:28.983 回答