Monday, 15 March 2010

python - exec child_process in a node js module -



python - exec child_process in a node js module -

i'm createing node module want have function called cpuutilization calls python script , stdout returned.

var sys = require('sys') var exec = require('child_process').exec; exports.cpuutilization = function() { exec('./nodeprime/cpuutilization.py', function (error, stdout, stderr) { return(json.parse(stdout)); }); }

you net result cpuutilizationbecause return statement not apply function, callback within function.

you need transform code asynchronous 1 , homecoming result using callback well:

exports.cpuutilization = function (callback) { exec('./nodeprime/cpuutilization.py', function (err, stdout, stderr) { if (err) homecoming callback(err); callback(null, json.parse(stdout)); }); };

it's mutual sense callbacks in node.js should homecoming (at least) 2 parameters, first 1 error instance, , sec 1 contains actual data.

now can utilize function, e.g.:

cpuutilization(function (err, data) { // info ... });

generally i'd recommend create familiar higher-order functions.

python node.js

No comments:

Post a Comment