C# 如何在不同线程上进行同步调用
我想用一个单独的C# 如何在不同线程上进行同步调用,c#,multithreading,C#,Multithreading,我想用一个单独的ManualResetEvent将操作排入函数队列,如 Enqueue(() => { function(); ManualResetEvent evt; }); evt.WaitOne(); 在从函数队列执行操作的线程上,执行该操作 Action action = queue.dequeue(); action(); 我想做:evt.Set()这里 我的问题是如何获得ManualResetEvent对象,因为在调试器中,我可以看到操作的目标是ManualR
ManualResetEvent
将操作
排入函数队列,如
Enqueue(() =>
{
function();
ManualResetEvent evt;
});
evt.WaitOne();
在从函数队列执行操作的线程上,执行该操作
Action action = queue.dequeue();
action();
我想做:evt.Set()代码>这里
我的问题是如何获得ManualResetEvent
对象,因为在调试器中,我可以看到操作的目标是ManualResetEvent evt不要将操作排队,而是将对象实例排队(需要定义)如果具有类型为Action
的属性和类型为ManualResetEvent
的属性,则您可以访问这两个属性。不要将Action
排队,而是将具有类型为Action
的属性和类型为ManualResetEvent
的属性的对象实例(您需要定义)排队,然后您可以访问这两个让我们编辑您的问题,特别是在有源代码的地方。当您仅在出列后执行操作时,为什么要手动重置事件?您试图实现什么?我有一种感觉,你的潜在问题有一个解决方案,通过你问的问题,特别是在有源代码的地方,编辑你的问题。当你只在出列后执行操作时,为什么你想要ManualResetEvent?你想实现什么?我有一种感觉,你的潜在问题有一个解决方案,它确实贯穿了你提出的问题