問題タブ [libuv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
9687 参照

c - libUV ハンドルを正しく閉じる

このプログラムを Valgrind で実行しているときに発生するこれらのメモリ リークを修正する方法を見つけようとしています。の 2 つの割り当てでリークが発生しnShell_client_mainます。しかし、それらを適切に解放する方法がわかりません。

nShell_Connect でそれらを解放しようとしましたが、libUV がプログラムを中止させています。の最後でそれらを解放しようとしましたnShell_client_mainが、ループを閉じるときに読み取り/書き込みエラーが発生します。これらのハンドルを閉じる方法を知っている人はいますか? 私はこれを読ん、始めました。uv_ip4_addrただし、最新バージョンではプロトタイプが異なるため、時代遅れのようです。

nShell_main「エントリー」ポイントです)

アサーションは、このコードの抜粋 (Github の Joyent の libUV ページから取得) の switch ステートメントの最後で発生しています。

手動で呼び出すことはできますuv__tcp_closeが、それはパブリック ヘッダーにはありません (とにかく正しい解決策ではない可能性があります)。

0 投票する
1 に答える
1832 参照

qt - qtのlibuvイベントループ

複数のスレッドを使用しない方法はありますか?

これを見つけましたhttps://stackoverflow.com/a/17329626/4014896

しかし、私はそれがどのように機能するかわかりません。この例では、CPU 使用率が 100% になるべきではありませんか? QTなどに埋め込むにはどうすればよいですか?

これもあります: https://github.com/svalaskevicius/qt-event-dispatcher-libuv しかし、ドキュメントはまったくありません。しかし、私の見た目からは、例の QSocket から uv_tcp_socket に変換するもののように見えますが、これは私が探しているものではありません。

0 投票する
1 に答える
1449 参照

c++11 - LibSourcey での経験

libuv をグーグルで調べているときにlibsourceyに出くわしました。非常に機能が豊富に見えますが、確固たるレビューやベンチマークを見つけることができませんでした (実際、これは LibSourcey に関するスタック オーバーフローに関する最初の投稿のようです)。

このフレームワークをまだ経験したことがない人はいますか?

0 投票する
2 に答える
1134 参照

node.js - libuv と Node.js は実際にどのようにタイマーをスケジュールしますか?

libuv とオペレーティング システムは、Node.js で setTimeout や setInterval などのタイマーを実際にどのようにスケジュールしますか? タイマーが起動するまで、ノード プロセスによって CPU が使用されていないことがわかります。これは、OS がタイマーをスケジュールし、タイマーが起動したときに Node プロセスを起動するということですか? もしそうなら、OSはどのようにタイマーをスケジュールし、ハードウェアはそれをどのように正確に実行しますか?

0 投票する
3 に答える
21146 参照

c++ - C++ エラー: 非静的メンバー関数への参照を呼び出す必要があります

libuv のネットワーク機能のいくつかの基本的な動作を抽象化するクラスを作成しようとしています。

前に示したコードの問題は、コンパイルしようとすると次のエラーが発生することです。

そしてそれlisten_uv_listen_uv_connection_cbは犯人として指摘します。

なぜそれがエラーなのか、どうすれば修正できるのか、誰か説明してもらえますか?

uv_listen()およびuv_connection_cbシグネチャは次のように宣言されます。

0 投票する
1 に答える
190 参照

libuv - 単一のコールバックに結合された uv_async_send() の数を数える

libuv のドキュメントから: http://docs.libuv.org/en/v1.x/async.html?highlight=uv_async_t

警告 libuv は uv_async_send() への呼び出しを結合します。つまり、すべての呼び出しでコールバックが実行されるわけではありません。唯一の保証は、少なくとも 1 回呼び出されることです。したがって、この関数を呼び出しても、以前に短時間で呼び出された場合、イベント ループがウェイクアップしない場合があります。

単一のコールバックを呼び出すために結合された uv_async_send() の数を見つける方法はありますか?