1

ConcurrentQueue在 VS2010 中使用 C#。该ConcurrentQueue变量是静态的,并且对象从不同的线程排队。在另一个连续运行的线程中,我正在将此对象出队并存储在数据库中。在对象入队之后,它也被发送到 wcf 服务。最近,我们发现 wcf 服务发送和记录的对象很少,但在出队的地方没有记录。

问题:是否有可能该对象未入队?如何确保对象是否排队?

注意:出列对象时没有记录异常。新对象以大约 1000 个/分钟的速度接收和排队。

4

1 回答 1

0

我不确定与ConcurrentQueue. 或者,我建议您创建一个类并包装您的ConcurrentQueue然后将方法公开给Enqueue & Dequeue(实际上是从您的ConcurrentQueue对象中入队和出队项目)。然后创建两个事件(两个自定义事件也需要成为包装器对象的一部分),这可以在您的 Enqueue 和 Dequeue 方法中触发,当线程执行 Enqueue 或 Dequeue 操作时,它将调用您的服务方法。

于 2013-05-30T10:17:31.693 回答