免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3675 | 回复: 4
打印 上一主题 下一主题

文件异步读写 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-07-10 13:52 |只看该作者 |倒序浏览
情况描述:两个进程,进程A和进程B,进程A向数据文件datafile写的同时,进程B从datafile里读数据。问题是现在进程B读数据的速度很快(提前结束),这时进程A写数据的工作还没有完成,现在有什么方法来控制不然进程B提前读结束退出,也就是说进程B需要等待进程A写数据结束以后才允许退出。

论坛徽章:
0
2 [报告]
发表于 2010-07-10 14:26 |只看该作者
回复 1# leewei


    用一个信号量,写完之后告诉读的进程可以读了。或者一直seletct直到读到一个什么诸如EOF之类的东东读进程再退出。

论坛徽章:
0
3 [报告]
发表于 2010-07-10 15:14 |只看该作者
现在的需求是为了提高效率,这两个进程需要同时进行,可能还不在同一他机器上,数据文件放在nfs中

论坛徽章:
1
天蝎座
日期:2013-10-23 21:11:03
4 [报告]
发表于 2010-07-10 15:20 |只看该作者
要控制等待只能用锁了;效率损失是应该的,否则会引起DB中常提的读“脏”数据

论坛徽章:
0
5 [报告]
发表于 2010-07-10 15:57 |只看该作者
实际情况是这样的,需要把db2源库中的数据export出来,然后load到目标库中。在同一台机器上利用管道是可以实现export,load同时进行,也没有问题的。现在由于数据库源和目标不在同一台机器上,两天机器做的nfs映射,我想实现的是在数据源端export datafile放在nfs上,在目标端读datafile文件向本地管道中写数据,同时启动db2 load开始加载数据,这样做的目的就是为了节约时间,实现一边export导出数据一边load加载数据。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP