libuv

    1

    1答えて

    私はメッセージングライブラリ用のIOコアを作成しており、libuvとLinux上のraw epollとWindows上のIOCP(そして最終的には他のsolarisイベントなど)を考慮しています。 libuv、私はパフォーマンスを見ています。 epollとIOCPによって、複数のスレッドがIOイベントを直接待機できるため、カーネルがディスパッチします。私は数字を持っていませんが、ユーザー空間のディ

    9

    1答えて

    は 、ノードのスレッド自然についてthis great answerを読んだ後、私は、スレッドプールのサイズを変更するUV_THREADPOOL_SIZEシステム変数でプレイし始め、そして私が何か面白いものを見つけました: 私は process.env.UV_THREADPOOL_SIZE = 10; を設定すると、私は15を取得します私のノードプロセスのスレッド(私は10 + 1メインノード

    1

    1答えて

    node.jsのlibuvスレッドプールの詳細については、次のnode.jsプログラム(Ubuntu 14.04のノードバージョン6.2.0)を書きました。プログラムでは、サイズ10KBの2つのテキストファイルを読んでいます。ファイルが正常に読み込まれた後、私はいくつかのコンピューティング集中的な仕事をしています(コールバックで)。 var log4js = require('log4js');/

    0

    1答えて

    libuvサーバーからloggerを作成しようとしています(シンプル) ファイルに書き込むことはできますが、ログに書き込もうとするとコードのいくつかの異なる場所から例外を取得しています。 これは私が持っているものです。 const char* logfile = "wsserver.log"; char buf[] = "Server Started!\n"; uv_fs_t open_req

    7

    2答えて

    libuvでは、あまりに多くの作業やバグの多いコードでワーカースレッドを縛ることになります。ワーカースレッドやスレッドキューの健全性をチェックできる単純な関数はありますか? 100%確定的である必要はありません。なぜなら、ワーカースレッドが低速コードや無限ループにぶら下がっているかどうかを判断することが不可能であるからです。 したがって、次のヒューリスティックのいずれかが良いでしょう:キューに入れ

    19

    1答えて

    私は最近、Node.jsのコアについて多くの研究をしています.Nodeプラットフォームの内部動作についていくつか質問があります。私の理解では、Node.jsのは、次のように動作します。 ノードは、プログラマが、ファイルシステムやネットワークのようなものと対話することができますJavaScriptで書かれたAPIを有しています。しかし、その機能はすべてC/C++コードで実際に行われ、Nodeの一部で

    9

    1答えて

    Windowsノードのアドオンでは、メッセージを受け取るためのウィンドウを作成しました。 Handle<Value> MakeMessageWindow(const Arguments &args) { // exposed to JS ... CreateWindow(L"ClassName", NULL, 0, 0, 0, 0, 0, HWND_MESSAGE, 0, 0,

    7

    1答えて

    uv_run関数を用いlibuvのイベントループを実行し、以下の値と共に使用される「モード」パラメータがあります。 UV_RUN_DEFAULTはイベントがなくなるまでイベントループを実行し、ループから単一のイベントを処理するのはUV_RUN_ONCEです。しかし、UV_RUN_NOWAITは、別のモードではなく、他の2つの値のいずれかと論理和を取ることができるフラグです。 デフォルトでは、イベン

    0

    2答えて

    libuvにC++レイヤをラップし、コールバック関数にlambdaを使用しようとしています。しかし、gccはエラーになります。 ここ縮小さバージョンです: #include <uv.h> class Test { public: void on_conn(uv_stream_t *server, int status) { } void test() { uv

    6

    2答えて

    私は現在非常に古いmmorpgのサーバー側を書き換えていますが、私はC/C++で使用するのに適したオープンソースネットワークライブラリを探していました。 クライアントが既に存在するため、何らかの種類のパケット構造や通信(RakNetなど)を実行するライブラリは使用できません。 サーバーは3つの異なるポートで主にUDPを使用します。 インターネットで検索したところ、boost :: asioとlib