nonblocking

    1

    1答えて

    Pythonでは、私はnon-blockingに設定したソケットにsocket.connect()を使用したいと思います。これを実行しようとすると、メソッドは常にBlockingIOErrorをスローします。エラー(後述)を無視すると、プログラムは期待通りに実行されます。接続後にソケットを非ブロッキングに設定すると、エラーは発生しません。 select.select()を使用してソケットが読み書き

    15

    3答えて

    GoがノンブロッキングIOをどのように処理するのか多少混乱します。 APIはほとんど私と同期していますが、Goのプレゼンテーションを見るときは、「と呼び出しブロック」のようなコメントを聞くのは珍しいことではありません。 ファイルやネットワークから読み取るときにブロックIOを使用しますか? Goルーチンの中から使用するとコードを書き直すような魔法がありますか? C#の背景から来ていますが、これは非常

    1

    1答えて

    私は現在select()タイムアウトでブロッキングソケットを使用するアプリケーションで作業していますが、Write関数ではsend()で非ブロッキングソケットを使用しています。私はちょうど(そしてすべての)状況がEWOULDBLOCK/EAGAINを返送することを知る必要がありますか? send()ため

    1

    1答えて

    私はしばらく時間がかかります。タスクは、bashスクリプトと2つのパラメータを使用して実行されます。ユーザーがこのタスクを起動すると、彼はこのタスクのステータス(したがって出力)を監視することができます。このために、出力はデータベースに格納され、ユーザーインターフェイスは現在の出力をフェッチします。 fetch.shを実行して、スクリプトの終了時だけでなく、各出力行をデータベースに挿入するにはどう

    0

    1答えて

    私はtelnetで 'GET/HTTP/1.1'を送信するとrecvが以下のコードでなぜブロックしているのか理解しようとしています。他のtelnet接続もブロックします。しかし、それが正常に動作し、私はちょうどすなわち、 char buffer[1024]; nbytes = recv(i, buffer, sizeof buffer, 0); 私がこれまで理解してどのような、その時点でse

    0

    1答えて

    この質問が以前に聞かれた場合はお詫び申し上げます。私は選択多重化を使用して非ブロッキングソケットクライアントを作成しています。私を混乱させることの1つは、オンラインまたはオフラインになっているサーバーに関係なく、非ブロッキング接続が常に成功することです。私は多くの記事を検索し、彼らのソリューションに従ったが、それらのどれも私のLinuxのubuntuマシンでは動作しません。 毎回 static v

    0

    1答えて

    私は最近、新しい要求が受信されるたびに再起動せずに、スタンドアロンのサービスとして実行することになっている以下のようなNode.jsのコードの一部、見た:それは、新しいMySQL接続を毎回開く switch(action) { case 'a': connectMysql(function(mysqlConnection) { // some queries X

    1

    1答えて

    私の質問はRuby rxライブラリの最終的なものですが、どの言語の例も喜んで感謝します。 基本的には、すべての操作を既存のイベントループ(またはスレッドプール)にスケジュールすることです。私はこれがスケジューラによって行われなければならないと思う。再帰的な操作をイベントループに送信するスケジューラーの例は見つかりませんでした。これが私が求めている理由です。ここでルビーRXのためのリストです: ht

    -1

    1答えて

    ノンブロッキングソケットコードを記述しようとしています。これまでのところ私はこれを試してみた: import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.setblocking(0) s.bind(('localhost',60003)) s.listen(1) #print 'Connected by'

    3

    1答えて

    私は接続UDPのスレッドを持っています。 タイムアウト中にスレッドを一時停止したい(またはUDPフレームを格納するQStackに新しいフレームがない間に)。 run(){ forever{ QTimer *timer_nb = new QTimer(); timer_nb->start(500); // --- Wait for timeout o