42 lines
954 B
JavaScript
42 lines
954 B
JavaScript
|
// Remote single stepping using RPC (controller)
|
||
|
// jamsh test-singlestep1.js -- 9001
|
||
|
// ...
|
||
|
var N=2,verbose=0,runCount=0;
|
||
|
var workers = [
|
||
|
'udp://localhost:9001',
|
||
|
'udp://localhost:9002',
|
||
|
'udp://localhost:9003',
|
||
|
'udp://localhost:9004'
|
||
|
]
|
||
|
|
||
|
workers=workers.slice(0,N);
|
||
|
var t = time();
|
||
|
function run1 () {
|
||
|
var ready = workers.length;
|
||
|
runCount++;
|
||
|
workers.forEach(function (url) {
|
||
|
if (verbose) log(url+' '+runCount);
|
||
|
else if ((runCount % 1000)==1) log(url+' '+runCount);
|
||
|
Rpc.trans(url,{
|
||
|
command:'sensor',
|
||
|
value : Math.random(),
|
||
|
})
|
||
|
Rpc.trans(url,{
|
||
|
command:'step'
|
||
|
},function (reply) {
|
||
|
if (verbose>1) log(url+inspect(reply))
|
||
|
else if ((runCount % 1000)==1) log(url+inspect(reply));
|
||
|
if (reply.status) ready--;
|
||
|
if (ready==0) {
|
||
|
if ((runCount % 1000)==1) {
|
||
|
var t1=time()-t;
|
||
|
log(t1);
|
||
|
t=time();
|
||
|
}
|
||
|
run1();
|
||
|
}
|
||
|
});
|
||
|
});
|
||
|
};
|
||
|
run1()
|