在PC上连接了数目未定的U盘(假定),现在能够用程序读取出来这些状态(有几个就会能显示出几个,<=20个),目的在于给这些设备传输数据。问题在于:
1,我通过D中的Thread Object 来创建20个线程,我希望能够当检测到有几个设备的时候才会运行几个线程,这问题就在于我怎么去把一个线程与一个设备联系起来,一一对应的(因为不仅有传输还有回应)。
2,我传输的是TXT文本里的数据(200行,每一行需要一个反馈给主线程),我不知道用这样的线程Thread Object 会不会造成资源冲突,如果有冲突的话,该怎么去解决。我的想法是建立一个临界区,当一个线程读取到第一行的时候,封锁,然后释放,给第二个到达的线程,这样实施起来就会时间上有很大的增加,而且没有过这样的经验。国庆了,因为这个项目估计还得加班,希望有好心人能帮我解决下,或者给我点思路也好。
1,我通过D中的Thread Object 来创建20个线程,我希望能够当检测到有几个设备的时候才会运行几个线程,这问题就在于我怎么去把一个线程与一个设备联系起来,一一对应的(因为不仅有传输还有回应)。
2,我传输的是TXT文本里的数据(200行,每一行需要一个反馈给主线程),我不知道用这样的线程Thread Object 会不会造成资源冲突,如果有冲突的话,该怎么去解决。我的想法是建立一个临界区,当一个线程读取到第一行的时候,封锁,然后释放,给第二个到达的线程,这样实施起来就会时间上有很大的增加,而且没有过这样的经验。国庆了,因为这个项目估计还得加班,希望有好心人能帮我解决下,或者给我点思路也好。
解决方案 »
- 有做过把C/S客户端程序转化为OCX在浏览器中调用的吗?大牛们请进~
- Md5 产生的32 位字符串 如何赋值给 array[0..15] of byte 数组 ?
- LinkTMFC组件安装问题
- 急需设计一个简单的组件! 关于Edit的,请大家进来帮忙看看!
- 讨论一个问题!!!来者有份!解决问题另给!
- 如何保存、打开Record类型数据?
- DBGrid怎么实现给当前记录加底色?
- 存储过程的问题,急!
- Delphi+ BDE+ Paradox的问题,我都急死了!兄弟们救命要紧!
- 刚刚,愤怒,,,告诉斑竹,这是倒分的帖子,,,,大家都关注。。。。。。。。。
- 自动化COM开发-如果在客户端关闭时不自动destroy服务器端
- 如何将CookieManager的内容赋值到另一个CookieManager
1.将usb的盘符与线程ID按顺序配对.
2.对应后,线程同时读取是往各自的U盘里写东西,是不会冲突的.
type
TXXXThread = class(TThread)
{实现线程的工作逻辑,一些动态关联的数据可通过参数设置进来.}
{...}
end;{...}var
pthr: ^TXXXThread;
begin
New(pthr); {动态创建}
{...}
Dispose(pthr); {最后请在适当(用完后)的地方销毁它.}
end;