ホームページ  >  記事  >  Java  >  Java の例 - ソケットはマルチスレッド サーバー プログラムを実装します

Java の例 - ソケットはマルチスレッド サーバー プログラムを実装します

黄舟
黄舟オリジナル
2017-01-20 11:52:051231ブラウズ

次の例は、Socket クラスの accept() メソッドと ServerSocket クラスの MultiThreadServer(socketname) メソッドを使用してマルチスレッド サーバー プログラムを実装する方法を示しています:

/*
 author by w3cschool.cc
 MultiThreadServer.java
 */import java.io.IOException;import java.io.PrintStream;import java.net.ServerSocket;import java.net.Socket;public class MultiThreadServer implements 
 Runnable {
   Socket csocket;
   MultiThreadServer(Socket csocket) {
      this.csocket = csocket;
   }

   public static void main(String args[]) 
   throws Exception {
      ServerSocket ssock = new ServerSocket(1234);
      System.out.println("Listening");
      while (true) {
         Socket sock = ssock.accept();
         System.out.println("Connected");
         new Thread(new MultiThreadServer(sock)).start();
      }
   }
   public void run() {
      try {
         PrintStream pstream = new PrintStream
         (csocket.getOutputStream());
         for (int i = 100; i >= 0; i--) {
            pstream.println(i + 
            " bottles of beer on the wall");
         }
         pstream.close();
         csocket.close();
      }
      catch (IOException e) {
         System.out.println(e);
      }
   }}

上記のコードを実行した出力結果は:

Listening
Connected

上記は Java の例です - ソケットはマルチスレッド サーバー プログラムのコンテンツを実装しています。さらに関連するコンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。