此C#实现是否符合VB6的线程模型规范?
VB6事件处理的线程模型解析
关于你问的「VB6的事件处理程序是否运行在独立线程中?」这个问题,答案很明确——并不是。
咱们来拆解一下背后的逻辑:
- VB6的所有代码(包括事件处理程序)都运行在单一线程里,这个线程被它的类服务架构封装着,整个程序的执行都依赖这一个线程,不存在专门给事件处理分配的独立线程。
- 你平时交互的很多看起来具备线程能力的对象,其实是拥有自己独立单元的外部COM对象。当这些跨单元的对象和你的VB6代码通信时,本质上是在执行RPC(远程过程调用),而不是在你的主线程里直接处理,也不会为事件单独创建新线程。
内容的提问来源于stack exchange,提问作者NewbGains
相关产品推荐
相关产品推荐

