中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java Socket服務器關鍵代碼配置的實例分析

發布時間:2021-10-23 17:56:21 來源:億速云 閱讀:148 作者:柒染 欄目:編程語言

這篇文章給大家介紹Java Socket服務器關鍵代碼配置的實例分析,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

Java Socket服務器在很多人使用的時候會出現或多或少的問題,其實在關鍵代碼中有不少的問題需要我們處理,下面我們就看看如何才能更好的使用Java Socket服務器的相關代碼。

Procedure2相比procedure1加入了多線程的部分,一個線程負責專門去接受消息,另一個負責發送消息。當服務器端負責接收的線程因為readUTF()被阻塞不能發送消息時,負責發送消息的線程讓服務器端也能發送消息。同樣的原理,客戶端也如此。

服務器端加入的關鍵代碼如下:

class ServerReadThread extends Thread{  private DataInputStream dis;  public ServerReadThread(DataInputStream dis){  this.dis = dis;  }  public void run(){  String info;  try{  while(true){  info = dis.readUTF();  System.out.println("客戶端說:" + info);  if(info.equals("goodbye")){  System.out.println("客戶端拜拜了!");  System.exit(0);  }  }  }catch(IOException e){  e.printStackTrace();  }  }  }  class ServerWriteThread extends Thread{  private DataOutputStream dos;  private BufferedReader br;  public ServerWriteThread(DataOutputStream dos,BufferedReader br){  this.dos = dos;  this.br = br;  }  public void run(){  String info;  try{  while(true){  info = br.readLine();  dos.writeUTF(info);  if(info.equals("bye")){  System.exit(0);  }  }  }catch(IOException e){  e.printStackTrace();  }  }  }

負責接受的類ServerReadThread繼承Thread,并構造一個DataInputStream對象參數的構造函數,接收對方信息。負責發送的類ServerWriteThread繼承Thread,并構造一個DataInputStream對象和BufferedRead對象的雙參數的構造函數,負責發送消息。new ServerReadThread(dis).start();new ServerWriteThread(dos,br).start();開啟兩個線程。客戶端原理與服務器端類似,就不做更詳細的講解。

思考:procedure2相比procedure1已經實現了多線程聊天,雖只是運行在控制臺上,但麻雀雖小,五臟俱全,這已經體現出了java Socket編程以及多線程的核心思想,此課程設計的目的已經達到。Java Socket服務器為實現更加人性化的效果,我引入javaGUI的組件awt,與之相關的技術也就隨之引入了,比如基于事件的驅動,還有awt各個組件之間的調用。與此同時,代碼的分布和組織結構都要做相應的調整。

關于Java Socket服務器關鍵代碼配置的實例分析就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

蒲城县| 乐亭县| 乌鲁木齐市| 忻州市| 阜城县| 新绛县| 浦县| 肥东县| 伊吾县| 临朐县| 石家庄市| 丹江口市| 枣强县| 九江县| 军事| 铁岭县| 济宁市| 新和县| 务川| 崇文区| 和静县| 麦盖提县| 克山县| 政和县| 洞头县| 即墨市| 云霄县| 容城县| 荥经县| 宝丰县| 庄河市| 米泉市| 无棣县| 土默特左旗| 堆龙德庆县| 疏勒县| 海宁市| 雅安市| 逊克县| 娄底市| 科尔|