簡體   English   中英

從Node.js運行連續流程

[英]Run Continous Process from Node.js

服務器的重點是能夠選擇一個網絡攝像頭並將其流化,以及我已經可以使用的其他一些功能。 我試圖從node.js服務器中運行一個連續的進程(mjpg-streamer)。 node.js服務器正在處理正在處理的HTML頁面,該頁面具有一個選擇下拉列表,該頁面綁定到javascript函數,以通過socket.io向服務器發送命令。 下拉菜單允許我選擇video0,video1和none。 但是,每當我嘗試運行服務器時,在特定的代碼塊不可訪問或代碼因運行無限進程而卡住后,它都會拒絕說所有內容。 如何在不鎖定服務器的情況下執行此操作? 這是導致問題的代碼:

child = exec("video0.sh", function (error, stdout, stderr) {
sys.print('stdout: ' + stdout);
sys.print('stderr: ' + stderr);
if (error !== null) {
  console.log('exec error: ' + error);
}

bash腳本video0.sh是:

cd mjpg-streamer/mjpg-streamer ;
export LD_LIBRARY_PATH=. ;
./mjpg_streamer -o "output_http.so -w ./www -p 8080" -i "input_uvc.so -d /dev/video0";

您可以直接在純shell中設置無限循環

#!/usr/bin/bash

cd mjpg-streamer/mjpg-streamer ;
export LD_LIBRARY_PATH=. ;
while :
do
  ./mjpg_streamer -o "output_http.so -w ./www -p 8080" -i "input_uvc.so -d /dev/video0";
  sleep 5
done
child = exec("sh video0.sh", function (error, stdout, stderr) {
  sys.print('stdout: ' + stdout);
  sys.print('stderr: ' + stderr);
  if (error !== null) {
   console.log('exec error: ' + error);
   }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM