读书人

线程同步 能实现不?该怎么处理

发布时间: 2012-03-25 20:55:16 作者: rapoo

线程同步 能实现不?
我想实现的是:

在线程一中:
不断的从数据库中读取数据信息匹配
当匹配出 达到我们监控的要求后 我会把这条信息 存储在 全局的 datatable中

在线程二中:
我会对datatable中的数据一条条的删除

数据匹配存储这个过程是一直进行的 不能受打扰,即使在datatable被线程二使用着,也要马上让给
线程一去操作。

不知道能否实现这样的效果不??

想过用lock,lock(datatable),这样实现我的功能,不知这样是否正确??

[解决办法]

探讨
我想实现的是:

在线程一中:
不断的从数据库中读取数据信息匹配
当匹配出 达到我们监控的要求后 我会把这条信息 存储在 全局的 datatable中

在线程二中:
我会对datatable中的数据一条条的删除

数据匹配存储这个过程是一直进行的 不能受打扰,即使在datatable被线程二使用着,也要马上让给
线程一去操作。

不知道能否实现这样的……

[解决办法]
用信号量
[解决办法]
探讨
引用:

用信号量

用信号量的话 当我对datatable操作的时候, 不是就不能让线程一去添加数据了吗?

[解决办法]
按LZ说的好像有点矛盾,同一时刻,根本不可能让两个线程同时作业的
线程一访问的时候必须得锁住了
线程二只有在收到某个通知(线程一现在休息了,控制句柄现在可以交给你了)后才能开始作业
作业过程中如果收到另一个通知(线程一现在上班了,必须移交控制权)

而上述过程正好是信号量完全胜任的工作

读书人网 >软件开发

热点推荐