BeginInvoke方法与Invoke有什么区别

avatar
作者
筋斗云
阅读量:4

BeginInvoke方法和Invoke方法都用于在另一个线程上执行指定的方法。它们的主要区别在于BeginInvoke是异步调用方法,而Invoke是同步调用方法。

具体来说,调用BeginInvoke方法会立即返回,并且方法将在另一个线程上执行,而调用Invoke方法会阻塞当前线程,直到调用的方法执行完成。这意味着BeginInvoke方法不会等待调用的方法执行完成就返回,而Invoke方法会等待调用的方法执行完毕才会继续执行下一行代码。

另外,BeginInvoke方法可以返回一个IAsyncResult对象,该对象可以用来获取异步操作的状态或者取消异步操作,而Invoke方法没有这个功能。

总之,使用BeginInvoke方法可以在不阻塞当前线程的情况下执行指定的方法,而Invoke方法会阻塞当前线程直到方法执行完毕。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!