不幸的是,使用.NET Compact Framework时,System.Threading中没有信号灯。
我不确定为什么会这样,有人有想法吗?
谷歌搜索之后,我发现有一堆人给出了自己的实现,但是没有一个人能真正发挥出色……或根本没有!
所以我来问专家...
是否有人可以为.NET Compact推荐良好的信号灯类/库?
框架?
要么
有什么我可以模仿的行为吗?
我有一个典型的生产者/消费者设置,其中线程将对象推送到队列(System.Collections)。
然后,我希望使用者线程将对象从队列中拉出并开始工作,但显然仅当队列中有需要处理的东西时才这样做!
我正在使用C#工作,但是只要可以在.NET CF上实现,我就可以使用任何语言的解决方案/伪方法。
最佳答案
您只需PInvoke到CreateSemaphore和ReleaseSemaphore-它们是在CE中的coredll中实现的。很容易编写一个类似于System.Threading.Semaphore的托管包装。
关于.net - .NET Compact Framework中的信号灯,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1746923/