Gra*_*ult 7 php file-io named-pipes
问题摘要:我设法加快了图像的翻阅速度,从而大大提高了图像的翻译速度,这是以使用并发为代价的.现在我需要确保对竞争条件的并发性.我将依赖脚本轮询正常文件的状态为独立的,但随后决定命名管道会更好.管道以避免轮询并命名,因为我无法从打开它们的脚本中获取PID(这是我需要使用管道进行通信的那个).
因此,当上传图像时,客户端通过AJAX将POST发送到脚本,该脚本1)保存图像2)产生并行脚本(独立)以拇指图像,3)将关于图像的JSON返回给客户端.然后客户端立即请求翻译版本,我们希望在发送响应时有足够的时间准备.但是如果它没有准备好,Apache mod_rewrites指向第二个脚本(依赖)的路径,它等待拇指完成,然后返回图像数据.
我希望这是相当简单的,但是,在通过终端单独测试独立脚本时,我得到了这个:
$ php -f thumb.php -- img=3g1pad.jpg
successSegmentation fault
Run Code Online (Sandbox Code Playgroud)
来源在这里:http://codepad.org/JP9wkuba 我怀疑我得到了一个段错误,因为我制作的fifo仍然是开放的,现在是孤儿.但我需要它来依赖脚本才能看到,对吧?它不应该是非阻塞的吗?我想这是因为脚本的其余部分可以运行....但它无法完成?正如我在开始时想到的那样,这将是普通文件的工作,除非两者都打开我不想进行轮询.我想最多投票一次并完成它.我只需要民意调查并忽略丑陋吗?