免费注册 查看新帖 |

Chinaunix

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

讨论一下:400上RPG程序以'O'型打开文件的系统处理 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-04-23 17:40 |只看该作者 |倒序浏览
偶尔间发现RPG中,如果一个PF文件的打开方式是'O'型的,则不会实时写入RECORD的,只能等程序*INLR=*ON或者此JOB断掉之后才FORCE TO WRITE的(即在此之前通过DSPFD或WRKQRY都看不到写入的记录),其它情况下则都是实时的,如用'U'型打开,或打开的文件是LF等都不会有这种情况。

不知大家注意到没有,个人觉得很奇怪,讨论一下先~~~

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2004-04-25 13:03 |只看该作者

讨论一下:400上RPG程序以'O'型打开文件的系统处理

是的,如果是批量写文件,这样可以提高性能。
如果想在写入后马上看到数据,可将O改为 U A
参见
成块和非成块记录

    如果下列条件成立,RPG编译程序对SEQ或DISK文件将非成块输入记录和成块输出记录:
    ·文件是仅输出文件(在文件规范表的17列指定为0)而且如果文件是外部描述的,仅有一个记录格式。
        ·文件是仅输入文件(文件描述规范表17列是I),如果文件是外部描述的,仅有一个记录格式,而且仅使用OPEN,CLOSE,FEOD和READ操作码。
    文件描述规范表上没指定RECNO键字。
    RPG编译对所有满足这些条件的SEQ或DISK文件生成成块和非成块记录的目标程序码。某些OS/400的限制可能不支持成块和非成块。在这种情况下,性能无法改善。

论坛徽章:
0
3 [报告]
发表于 2004-04-26 18:25 |只看该作者

讨论一下:400上RPG程序以'O'型打开文件的系统处理

"仅有一个记录格式"不知指得是否就是“RECORD FORMAT”,如果是就很奇怪,我的PF建立了一个LF,此LF的RECORD FORMAT跟PF是同一个,此时在程序中用'O'打开,就马上不会“成块”输出了,为何?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP