我有一个窗口,显示多个工作线程的结果,但我的工作线程应该没有中断(几乎),所以我想将我的通知数据发布到主窗口,我目前正在使用,BeginInvoke但它有一个问题!我应该打电话,EndInvoke但在哪里?我应该创建另一个线程来为此服务?另一种选择是PostMessage直接使用,但由于我正在学习使用,.NET我更喜欢.NET解决方案而不是平台调用(如果可用).那么我该怎么做才能在不阻塞我的工作线程的情况下将内容发布到主线程?
您应该简单地使用BeginInvoke,这直接相当于发布消息.EndInvoke除非您对返回值感兴趣,否则根本不需要打电话.
如果您有兴趣的返回值,则回答"我在哪里卡恩EndInvoke"是一种显而易见的:你为了继续需要返回值之前在最后时刻调用它.