MultiThreadClient.java
上传用户:caijun
上传日期:2022-08-05
资源大小:13k
文件大小:1k
源码类别:

加密解密

开发平台:

Java

  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStreamReader;
  4. import java.io.OutputStream;
  5. import java.net.Socket;
  6. import java.util.concurrent.ExecutorService;
  7. import java.util.concurrent.Executors;
  8. public class MultiThreadClient {
  9. public static void main(String[] args) {
  10. int numTasks = 10;
  11. ExecutorService exec = Executors.newCachedThreadPool();
  12. for (int i = 0; i < numTasks; i++) {
  13. exec.execute(createTask(i));
  14. }
  15. }
  16. // Define a simple task for each thread
  17. private static Runnable createTask(final int taskID) {
  18. return new Runnable() {
  19. private Socket socket = null;
  20. private int port = 8821;
  21. public void run() {
  22. System.out.println("Task " + taskID + ":start");
  23. try {
  24. socket = new Socket("localhost", port);
  25. // send close order
  26. OutputStream socketOut = socket.getOutputStream();
  27. //socketOut.write("shutdown\r\n".getBytes());
  28. socketOut.write("bye".getBytes());
  29. // receive the feedback from server
  30. BufferedReader br = new BufferedReader(
  31. new InputStreamReader(socket.getInputStream()));
  32. String msg = null;
  33. while ((msg = br.readLine()) != null)
  34. System.out.println(msg);
  35. } catch (IOException e) {
  36. e.printStackTrace();
  37. }
  38. }
  39. };
  40. }
  41. }