問題タブ [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 に答える
1565 参照

libuv - libuv をビルドできません

Debian マシンで libuv 0.11.24 をビルドしようとしています。私は試した:

次のエラーが表示されます。

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

sockets - HTTP キープアライブ接続でデータが到着したことをどのように確認できますか?

libuv を使用して単純な Web サーバーを実装しています。現在、キープアライブ接続に固執しています。

キープアライブに関する私の理解に基づいてuv_close()、リクエストが処理された後に確立された接続(TCPソケット)を呼び出さず、後で再利用します。

その接続で新しいリクエストが到着したことをどのように伝えることができるのでしょうか? つまり、いつuv_read_start()その有効な接続を呼び出せばよいのでしょうか?

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

javascript - Nodejs プロセスがブロックしている FUSE ファイルからの読み取りをロックアップする

ファイルを読み取ってコンテンツを提供するnodejs Webサーバーがあります。一部のファイルは FUSE 仮想ファイルであり、バッキング サービスがデータの提供を待機している間、長時間読み取りをブロックする可能性があります。

これらの読み取り要求が 5 つ溜まると、プロセスはどのファイルからも読み取れなくなるようです。また、必要に応じてこれらの保留中の読み取りを終了する方法がわかりません。

これは nodejs の制限ですか、それとも FUSE ファイルシステムが FUSE の期待と矛盾する方法で動作していますか?

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

c - libuv イベントループと libcurl

libcurlでlibuvを使用する方法の例からのサンプルコードを以下に示します

メイン関数は次のようになります。

イベントループを開始する方法について混乱しています。この行を実行すると

ループには保留中のイベントがまったくないので、理論的にはループはすぐに終了するべきではありませんか?

コールバック handle_socket を実行するための変更は必要ありません。curl_perform()curl ソケット コールバックのコールバックで設定された が実行される可能性はありません。

私の理解に何か問題がありますか?

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

javascript - ファイル記述子を指定してnodejs Duplexストリームを開くにはどうすればよいですか?

既存のプログラムをnodejsに移植しています。このプログラムでは、ファイル ディスクリプタを開き、そのファイル ディスクリプタを呼び出すスレッドに渡して、pollいつ読み取り可能かを判断します。

カスタム C++ モジュールを作成する代わりに、Node の便利でダンディなDuplex streamを利用して純粋な JavaScript でこれを行いたいと思います。

たとえば、次のようなことをしたいと思います。

これは存在するはずですが、どこにあるのかわかりません。もしかして私は盲目なだけ?PollDuplexStream上記の例に相当する現実世界は何ですか?

パスではなくファイル記述子で始まるソリューションを明示的に探していることに注意してください。それ以外の場合は、fs.createReadStreamとから独自に作成しますfs.createWriteStream

また、内部で呼び出すことも気にしませんpoll。実際、内部で libuv を使用することをお勧めしuv_poll_*ます。

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

libuv - libuv は POSIX システム上の libev の単なるラッパーですか?

私はlibevとlibuvの間で本当に混乱しています。

libuv は POSIX システム上の libev の単なるラッパーですか?

そうでない場合、どこが違うのですか?

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はどのようにタイマーをスケジュールし、ハードウェアはそれをどのように正確に実行しますか?