我有两个节点线程在运行,一个观察目录以使用文件,另一个负责将文件写入给定目录。
通常,它们不会在同一目录上运行,但对于我正在处理的边缘情况,它们将是。
似乎消费应用程序在文件被完全写入之前抓取文件,导致文件损坏。
有没有办法锁定文件直到写入完成?我已经研究过这个lockfile模块,但不幸的是我不相信它适用于这个特定的应用程序。
======
把完整的代码放在这里远远没有意义,但它的要点是:
听众:
fs.writeFile观察者:
chokidar跟踪每个被监视目录中添加的文件fs.access被调用以确保我们可以访问该文件
fs.access 似乎对正在写入的文件无动于衷fs.createReadStream然后发送到服务器
在这种情况下,文件被导出到被监视的目录,然后被监视进程重新导入。
这个PHP IF语句总是导致'false',我无法弄清楚原因.任何帮助是极大的赞赏.
其中$ i作为0传入,$ j作为4传入(这些数字在POST中验证)
$i = $_POST['entry'];
$j = $_POST['j'];
function tabs() {
if ($i < $j)
echo 'i is less than j';
else
echo 'false';
};
Run Code Online (Sandbox Code Playgroud)