久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

javascript - 為什么 process.stdin 會有 write 方法? ???

瀏覽:158日期:2023-09-26 11:24:01

問題描述

寫在前面

根據 官方API,在 stream 中只有可寫流才會有 write 方法,但是有這樣一個例子卻使用 process.stdin.write() 發送數據。而 process.stdin 在 官方API 中是可讀流。

問題:

RT,如果是其他的原因造成這樣一個情況,麻煩詳細描述一下。謝謝

參考代碼:

stdin.js

/** * 監聽輸入的數據,并輸出到控制臺 */// 重新開始 stdin streamprocess.stdin.resume();// 監聽輸入的數據process.stdin.on(’data’, function (data) { var number; try { // 將輸入的信息解析成數字 number = parseInt(data.toString(), 10); // 自增1 number += 1; // 輸出 數字 process.stdout.write(number + 'n',function() { console.log(1); }); } catch (err) { process.stderr.write(err.message + 'n'); }});

stdin_test.js

var spawn = require(’child_process’).spawn;// 使用 node 進程創建一個子進程執行 stdin.jsvar child = spawn(’node’, [’stdin.js’]);// 每隔一秒調用一次該函數setInterval(function() { // 生成一個小于 10 的隨機數 var number = Math.floor(Math.random() * 10); // 將該隨機數發送到子進程 child.stdin.write(number + 'n'); // 監聽子進程的輸出 并打印出來 // 此處對應 stdin.js 的 process.stdout.write child.stdout.once(’data’, function(data) { console.log(’child replied to ’ + number + ’ with: ’ + data); });}, 1000);child.stderr.on(’data’, function(data) { process.stdout.write(data);});

問題解答

回答1:

注意這里的 stdin 是 ChildProcess 的,是可寫流

https://nodejs.org/dist/lates...

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 磴口县| 潜山县| 日土县| 绍兴市| 湾仔区| 庆安县| 鄄城县| 湖南省| 嘉义县| 高碑店市| 辉南县| 抚宁县| 吴堡县| 昭平县| 银川市| 揭阳市| 肥城市| 额尔古纳市| 高青县| 克拉玛依市| 兴安县| 阿勒泰市| 青岛市| 金沙县| 巴林右旗| 兴宁市| 子长县| 浮山县| 巴彦县| 龙里县| 云林县| 饶阳县| 喀喇沁旗| 永泰县| 广昌县| 济阳县| 涟水县| 南汇区| 柏乡县| 渭南市| 清涧县|