os.exe是否在lua中阻塞线程?

Vya*_*lav 2 lua nginx

在我的nginx + lua应用程序操作系统执行命令行,os.execute("ls 2>&1 | tee a.txt") 我想知道它是否阻止主应用程序?我想使用命令"执行并忘记"的情况.如果它阻止如何修复它并在后台线程中执行一个简单的行?

Pau*_*nko 5

os.execute()将阻止执行您正在运行的命令的时间,并且由于您生成了一些输出,io.popen因为您需要从管道中读取,因此使用将无助于您(否则进程仍将阻塞某点).

更好的方法是在后台运行该过程:os.execute("ls >a.txt 2>&1 &").重定向>2>事项的顺序以及&最后将在后台运行命令,解锁os.execute.