【发布时间】:2010-07-20 16:57:49
【问题描述】:
我正在更新用 VB6 编写的遗留代码,并且遇到了对互斥体的需求。我有两个套接字,我需要从各种来源发送和接收。所以我打算让一个套接字持续监听传入的连接,然后另一个用于发送或接收。
如果有连接进来,计时器每秒检查二十次,如果是,则使用第二个套接字接受它,然后立即重新开始侦听。如果第二个连接在第一个连接完成接收数据之前进入,它需要等待(在 C# 中,我会对其进行锁定并调用它完成。)
另外,如果程序需要发送数据,我将使用第二个套接字,并连接到远程主机。所以如果第二个套接字已经接收到数据,它也需要阻塞。
我不熟悉 VB6 中的多线程 - 这是一个问题,还是计时器的 Tick 事件总是在与其他所有线程相同的线程上引发?
【问题讨论】:
-
是什么阻止您创建支持 COM 的 C# 程序集并从您的旧版 VB6 项目中调用它?听起来你可能会更成功。
标签: multithreading sockets vb6 mutex