Perl 板


LINE

※ 引述《jlovet (你这可恶的骗子)》之铭言: : 标题: Re: [问题] cgi如何以背景执行一个外部程式 : 时间: Sat Jun 23 01:36:44 2007 : : : man 2 fork : * The child inherits copies of the parent's set of open file descrip- : tors. Each file descriptor in the child refers to the same open : file description (see open(2)) as the corresponding file descriptor : in the parent. This means that the two descriptors share open file : status flags, current file offset, and signal-driven I/O attributes : (see the description of F_SETOWN and F_SETSIG in fcntl(2)). : : 我想应该是因为这个关系吧 : : 因为在你的Perl执行system之前有打开了档案 (就是输出到你网页上的...) : 这个file handle 被system执行的东西继承了... : : 所以...在你child 结束之前,这档案都是保持打开状态 : 恩...就这样 : : -- :



※ 发信站: 批踢踢实业坊(ptt.cc)
: ◆ From: 140.123.235.194 : 推 megaman1206:谢谢 所以说STDOUT先关的做法是没错的了orz 06/23 06:28 我只写过 Hello CGI 之流的东西,纯粹是用猜测,不知道可不可以给一点帮助 就你之前所说的: 「我想让A程式呼叫B程式之後马上显示提示讯息然後网页就不继续读取 ....... 我之後就改成先输出讯息之後关闭STDOUT才执行B程式 这样虽然流程很怪可是却成功了」 那我猜测是:关闭 STDOUT 之後,网页就不会再继续读取 (你可以在程式里面加个 sleep 去测试看看是不是真的这样 我也懒得架个 CGI 的环境,哈哈哈 XD ) 如果真的是这样.... http://0rz.tw/0d2Lj [注] 有提到 The following file handles are open by default: STDOUT - Standard Output,for regular use output, typically the screen STDOUT 这个 File Handler 预设就会被打开。 [注]:http://www.wellho.net/mouth/255_STDIN-STDOUT-STDERR-and-DAT A-Perl-file-handles.html 而 fork 这个函式 (在 Perl 里面应该不能算是 System Call ?!) 就是拷贝出一个一模一样的 Process 也就是说当你在 A 里面用 fork 的时候 执行完 fork 这一行会有两个 A (Dobule A?!) 而这两个的 File Descriptor, 程式,变数...等等都会完全相同 不同的只有他们的 Process ID 程式一开始执行就打开了 STDOUT, fork 之後就有两支 Process 打开 STDOUT 只有一支 Process 关掉 STDOUT,当然不会让网页停止读取 如果真的是「关掉 STDOUT 网页就会停止读取」 那麽按照你的需求,输出後关掉 STDOUT 再执行 B 就可以了。 而且也不需要用到 fork :P 下台一鞠躬...(跑) -- (观众丢食物上台) -- 我想你会衰成这样都是我害的 ---- Tizzy Mac 紧张的麦金塔?这是谁(._.?) --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.128.98.6
1F:推 qrtt1:还有 nohup 啊 :D 06/23 11:03
2F:推 WalkingIce:nohup 我没用过XD..Q 桑出现了 (拜) 06/23 11:13
3F:推 megaman1206:感谢大家 学到不少东西m(_ _)m 06/23 17:10







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP