-1

2つのソケット接続をリッスンする2つのスレッドを作成します。各スレッドは各ソケットに接続され、データを受信しますが、ここで1つ注意する必要があるのは、同時に実行され、データを永久にフェッチすることです。例:

スレッド1

Thread {
    //fetch data from socket 1234
}

スレッド2

Thread 2 {
    //fetch data from socket 5678
}
4

1 に答える 1

1

シングル プロセッサ デバイスの場合、2 つのスレッドが同時に実行されることはありません。両方のスレッドには、それぞれのタスクを実行するためのタイム スロットが与えられます。ただし、2 つの異なるスレッドを作成しているため、2 つのスレッドがソケットからデータを受信すると、別のスレッド スケジューリングによるデータ損失は発生しません。あなたは単に以下を行うことができます

    Thread thread1 = new Thread(){
        public void run(){
         //do something
        }
     }
    Thread thread2 = new Thread(){
         public void run(){
          //do something
          }
      }
    thread1.start();
    thread2.start();

その場合、データの受信に問題はありません。

于 2013-03-10T08:45:21.160 に答える