| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 666 人关注过本帖, 1 人收藏
标题:[求助]数据的保存
只看楼主 加入收藏
ft249732
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-7-11
收藏(1)
 问题点数:0 回复次数:3 
[求助]数据的保存
在程序里面会不间断的接收数据包,并且每个小时就会把这些数据写入数据库,请问一下这些数据应该怎样保存?考虑问题,在写入数据库的时候还是在继续的接收数据包~
我的意思是把信息存到文件里面,时间到了在写数据库
但问题是在写如数据库和往文件里写信息是不可能同时进行的,会报错的
一边往文件里写数据 ,一边又打开文件写数据库的 就会报该进程已经在执行中,不能操作
应该怎么办?
搜索更多相关主题的帖子: 数据库 保存 文件 会报 
2007-07-11 11:24
jockey
Rank: 3Rank: 3
等 级:论坛游民
威 望:8
帖 子:977
专家分:52
注 册:2005-12-4
收藏
得分:0 
个人感觉:

可以用两个文件保存,第一个文件A写入收取数据包内容,当时间到时,关闭第一个文件A,开始向第二个文件B继续写数据包内容,同时把第一个文件A的内容写数据库,然后关闭文件A,同理...时间到时,关闭B,打开A继续接收数据包内容,传送B给数据库......


2007-07-12 11:03
川流不息
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2000
专家分:47
注 册:2006-11-8
收藏
得分:0 
理論上支持上樓

日月更替,天地輪回,人間已是幾回春。 江山不老,人正少年,只手能擎半邊天。
2007-07-12 11:13
立志成佛
Rank: 1
等 级:新手上路
威 望:2
帖 子:314
专家分:0
注 册:2006-11-1
收藏
得分:0 
我用过的一个办法:

程序里建立一个数据缓存sb,一个文件写入缓存al,一个文件是否在用监控标志inUse,外面建立输出文件txt,输入数据库database

接收线程:
1:sleep(1000);
2:接收数据到sb
3:判断sb是否满,如果满则执行4,如果没有满则执行1。
4:把sb里的东西添加到al中。跳转1。

文件监控线程:
1:判断al中是否有记录,如果没有执行2,有则执行3;
2:sleep(1000);跳转1。
3:判断inUse,如果true,则2;如果false则5。
5:改变inUse为true;
6: 写文件。
7:改变inUse为false;跳转1。

数据库监控线程:
1:判断inUse,如果true,则2;如果false则3。
2:sleep(1000);跳转1。
3:改变inUse为true;
4:写数据库。
5:改变inUse为false;
6:sleep(1小时)。跳转1。

其中线程休息时间以及缓存大小都需要根据实际项目需要调整。
这个办法比较麻烦的说。

[此贴子已经被作者于2007-7-12 11:31:45编辑过]


曾经的曾经已不在
2007-07-12 11:23
快速回复:[求助]数据的保存
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025394 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved