2010-08-23 198 views
0

.Net是否与PosthreadMessage等效?等同于PosthreadMessage

我们目前使用一个List(用于保存项目),一个锁(保护列表)和一个事件(通知消费者线程一个项目已被添加到列表中)以获得相同的功能。

是否有任何优化的方式来实现这个?

回答

1

.NET 4.0(System.Collections.Concurrent)中有一些并发集合,您可能可以使用它而不是滚动自己的线程安全数据结构?我不确定你的要求是什么,我不确定你想优化容器的方式与使其等同于PostThreadMessage有什么关系。 如果您愿意,您可以随时使用托管C++将PostThreadMessage公开给.NET应用程序。或者你也可以使用PInvoke从你的应用中调用它。

0

看起来好像没有太多优化空间,除非您想将其设计为单线程以避免上下文切换。无论如何,这可能是首选,from program logic point of view