新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 关于 XML 的一般性技术讨论,提供 XML入门资料 和 XML教程
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - XML技术『 XML基础 』 → [求助] 处理 xml 文件时,并发操作的问题。 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 4402 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: [求助] 处理 xml 文件时,并发操作的问题。 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     likebbs 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(高数修炼中)
      文章:34
      积分:149
      门派:XML.ORG.CN
      注册:2004/3/16

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给likebbs发送一个短消息 把likebbs加入好友 查看likebbs的个人资料 搜索likebbs在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看likebbs的博客楼主
    发贴心情 [求助] 处理 xml 文件时,并发操作的问题。

    a 是一个 xml 文件。。
    a1 和 a2 正在访问这个 文件。

    并且两个人(暂定同时在 10:00访问文件并操作)正在对 a 文件做一些更新。。
    10 分钟之后各自处理完毕保存(用 Msdom)。。。

    这里有个问题,dom 是基于内存的,也就是说 a1 和 a2 处理的文件都是基于 10:00 之前的。
    而他们各自所做的更新也同样基于 10:00之前的 a 文件。。
    那么如果 a1 在 10:10 往 a 文件添加了一条记录,保存完毕退出。。
    而 a2 在 10:15 分添加一条记录,保存完毕退出。。。
    照这么推论 , a2 保存的文件应该会推翻 a1 所保存的吧 ??

    有没有在处理之前加锁 的方法?
    谢谢 !!


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/3/25 20:46:00
     
     小鞋子 帅哥哟,离线,有人找我吗?
      
      
      威望:6
      头衔:大法師
      等级:大二期末(Java考了96分!)
      文章:353
      积分:958
      门派:XML.ORG.CN
      注册:2003/12/19

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给小鞋子发送一个短消息 把小鞋子加入好友 查看小鞋子的个人资料 搜索小鞋子在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看小鞋子的博客2
    发贴心情 
    关注...以前FOS操作文本文件可以.不知道DOM有没有..不知道可以不可借用过来呢

    ----------------------------------------------
    本人只會一點點XML.
    和ASP.以及FLASH.其它都不太懂.

    大家多多指教.

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/3/25 21:34:00
     
     xgy2000 帅哥哟,离线,有人找我吗?
      
      
      头衔:我爱木栅
      等级:大一(高数修炼中)
      文章:47
      积分:173
      门派:XML.ORG.CN
      注册:2004/3/18

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给xgy2000发送一个短消息 把xgy2000加入好友 查看xgy2000的个人资料 搜索xgy2000在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看xgy2000的博客3
    发贴心情 
    我的建议是在xml中追加一个version
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/3/26 9:33:00
     
     likebbs 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(高数修炼中)
      文章:34
      积分:149
      门派:XML.ORG.CN
      注册:2004/3/16

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给likebbs发送一个短消息 把likebbs加入好友 查看likebbs的个人资料 搜索likebbs在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看likebbs的博客4
    发贴心情 
    version ??
    据我所知 version 好象是版本的意思吧??

    和这个问题有什么关系呢?
    请讲的明白一点,谢谢!!

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/3/26 9:41:00
     
     xgy2000 帅哥哟,离线,有人找我吗?
      
      
      头衔:我爱木栅
      等级:大一(高数修炼中)
      文章:47
      积分:173
      门派:XML.ORG.CN
      注册:2004/3/18

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给xgy2000发送一个短消息 把xgy2000加入好友 查看xgy2000的个人资料 搜索xgy2000在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看xgy2000的博客5
    发贴心情 
    我曾经在网上看到过,没有试过
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/3/26 9:43:00
     
     likebbs 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(高数修炼中)
      文章:34
      积分:149
      门派:XML.ORG.CN
      注册:2004/3/16

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给likebbs发送一个短消息 把likebbs加入好友 查看likebbs的个人资料 搜索likebbs在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看likebbs的博客6
    发贴心情 
    但是你说的这个 version 和如何防止并发操作 不搭边啊。。
    能不能讲的具体一点呢?
    这个问题很严重,如果不合理解决的话,会有麻烦的。。

    谢谢!谢谢!!

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/3/26 9:54:00
     
     likebbs 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(高数修炼中)
      文章:34
      积分:149
      门派:XML.ORG.CN
      注册:2004/3/16

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给likebbs发送一个短消息 把likebbs加入好友 查看likebbs的个人资料 搜索likebbs在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看likebbs的博客7
    发贴心情 
    我暂时想了个替代的办法:
    每当执行更新操作时,
    建立一个以该 XML文件名/路径  为变量的 application 变量。
    并且给这个 application 赋值为1, 表示暂时锁定。。
    执行更新完毕后再将这个 application 变量释放,节省内存空间。

    只要碰到更新操作时,总判断一下该 XML文件名/路径 为变量的application 是否为 1。
    如果是 1 ,说明有人在更新此文件,如果为空则表示 可以进行更新操作。。

    不知道这种方法是否消耗系统资源????

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/3/27 10:07:00
     
     booolee 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:13
      积分:74
      门派:XML.ORG.CN
      注册:2004/3/19

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给booolee发送一个短消息 把booolee加入好友 查看booolee的个人资料 搜索booolee在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看booolee的博客8
    发贴心情 
    不知道有没有锁定功能~~~
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/3/27 13:16:00
     
     小鞋子 帅哥哟,离线,有人找我吗?
      
      
      威望:6
      头衔:大法師
      等级:大二期末(Java考了96分!)
      文章:353
      积分:958
      门派:XML.ORG.CN
      注册:2003/12/19

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给小鞋子发送一个短消息 把小鞋子加入好友 查看小鞋子的个人资料 搜索小鞋子在『 XML基础 』的所有贴子 引用回复这个贴子 回复这个贴子 查看小鞋子的博客9
    发贴心情 
    以下是引用likebbs在2004-3-27 10:07:12的发言:
    我暂时想了个替代的办法:
    每当执行更新操作时,
    建立一个以该 XML文件名/路径  为变量的 application 变量。
    并且给这个 application 赋值为1, 表示暂时锁定。。
    执行更新完毕后再将这个 application 变量释放,节省内存空间。

    只要碰到更新操作时,总判断一下该 XML文件名/路径 为变量的application 是否为 1。
    如果是 1 ,说明有人在更新此文件,如果为空则表示 可以进行更新操作。。

    不知道这种方法是否消耗系统资源????



    我认为目前的一个方法是这个.
    而实际中如果这样.这样又如何解决.

    用户一,加载完XML文件.就锁定.
    application产生
    用户二无法加载.在等....

    1------------------------------

    用户一,特然要打很久....或已掉线.
    用户二.还在等很久.无法加载

    2------------------------
    用户一,在修改数据花了半小时打完.
    用户二,才可以加载.

    3---------------------------
    用户一,同样花了很长时间在修改数据.系统认为此用户掉线.application解锁
    而事实想用户一的内存还有加载着旧的数据.

    用户二,在用户一掉线时同样加载了文件.

    此时各修改了不同数据.那么.大家再一保存.就可想而之.结果会不一样了.
    或者说.在用户二保存后.用户一不能再保存.那么用户一所做的一切就会白白浪费..


    -------------OVER

    ----------------------------------------------
    本人只會一點點XML.
    和ASP.以及FLASH.其它都不太懂.

    大家多多指教.

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/3/28 11:57:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 XML基础 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/5/9 13:00:43

    本主题贴数9,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    93.750ms