2012-04-17 10 views

答えて

1

はい、可能です。ここでは、1つのプロセスでgcを作成し、コマンドラインパラメータとして別のプロセスに渡すことができる例(JavaScriptではnode-x11を使用しています)です。 gc(この例では前景色)に対するすべての変更は、別のプロセスで表示されます。最初のプロセスが終了するとサーバー上でGCが破棄され、続行しようとすると2番目のプロセスで「不正なGContext」エラーが表示されます。

var x11 = require('x11'); 

var gc; 
x11.createClient(function(display) { 
    var X = display.client; 
    var root = display.screen[0].root; 

    var wid = X.AllocID(); 
    X.CreateWindow(wid, root, 0, 0, 400, 300); 

    var _gc = parseInt(process.argv[2]); 
    if (_gc != 0) 
     gc = _gc; 
    else { 
     gc = X.AllocID(); 
     X.CreateGC(gc, root); 
     console.log('GC created: ' + gc); 
     setInterval(function() { 
      X.ChangeGC(gc, { foreground: parseInt(Math.random()*0xffffff) }); 
      console.log('gc updated!'); 
     }, 500); 
    } 
    X.MapWindow(wid); 
    setInterval(function() { 
     X.PolyText8(wid, gc, 50, 50, ['Hello, Node.JS!', ' Hello, world!']); 
     console.log(gc); 
    }, 100); 
    X.on('error', function(err) { 
     console.log(err); 
    }); 
}); 
+0

ありがとうございました!私はX11が新しく、このような操作が有効であることを知りたがっています。 –

関連する問題