0

内でスレッドが適切に実行できるかどうかを確認し、理解したいと思いますv8 functions。これを理解するには、次の例を検討してください: このサーバー行:

var ob1 = addon.buffering(data,size,0,1,client.id);

次の v8 関数を実行します。

void buffering(const FunctionCallbackInfo<v8::Value>& args) {
    Isolate* isolate = Isolate::GetCurrent();
    HandleScope scope(isolate);
    //(...input args....)
    t[iterator_test] = thread(&SREngineJulius::Audio_Buffering_thread, &Julius[client_id], node::Buffer::Data(bufferObj), size, final_read, inicio_read, client_id);
   //(....output results...)
} 

そしてさらに:

var final result = addon.julius(client.id);

電話します:

void julius(const FunctionCallbackInfo<v8::Value>& args) {
    Isolate* isolate = Isolate::GetCurrent();
    HandleScope scope(isolate);
    //(..input args...)
    t[iterator_test].join();
    //(final routines)
    //(output results)
}

このコードを極端な環境 (多くのユーザーがいる環境) でテストして、パフォーマンスを確認することはできません。を呼び出しbufferingbuffering作成するthreadと、v8 functionスレッドの実行を待ちます(nodejsに戻るため)? または、私が望むように、待機プロセスは ? で行われjuliusますjoin()

4

0 に答える 0