电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java實(shí)現(xiàn)UDP多線程在線咨詢(xún)

瀏覽:118日期:2022-08-14 10:03:11

本文實(shí)例為大家分享了Java實(shí)現(xiàn)UDP多線程在線咨詢(xún),供大家參考,具體內(nèi)容如下

1.發(fā)送的線程

import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetSocketAddress;import java.net.SocketException;//發(fā)送線程public class TalkSend implements Runnable { DatagramSocket socket = null; BufferedReader reader = null; private int formPort; //自身端口 private String toIP; //發(fā)送到的IP private int toPort; //發(fā)送到的端口 public TalkSend(int formPort, String toIP, int toPort) {this.formPort = formPort;this.toIP = toIP;this.toPort = toPort;try { socket = new DatagramSocket(formPort); reader = new BufferedReader(new InputStreamReader(System.in)); //獲取控制臺(tái)輸入} catch (SocketException e) { e.printStackTrace();} } @Override public void run() {while(true) { try {String data = reader.readLine(); //獲取到的數(shù)據(jù)byte[] datas = data.getBytes(); //轉(zhuǎn)換為需要的字節(jié)數(shù)組//將數(shù)據(jù)打包成包DatagramPacket packet = new DatagramPacket(datas,0, datas.length,new InetSocketAddress(this.toIP,this.toPort));socket.send(packet); //發(fā)送包//退出指令if(packet.equals('bye')){ break;} } catch (IOException e) {e.printStackTrace(); }}socket.close(); }}2.接收的線程

import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.SocketException;//接收線程public class TalkReceive implements Runnable { DatagramSocket socket = null; //與發(fā)送端的socket為同一個(gè),實(shí)現(xiàn)通信 private int port; private String msgFrom; //標(biāo)志信息來(lái)源 public TalkReceive(int port, String msgFrom) {this.port = port;this.msgFrom= msgFrom;try { socket = new DatagramSocket(port);} catch (SocketException e) { e.printStackTrace();} } @Override public void run() {while (true){ try {byte[] container = new byte[1024];DatagramPacket packet = new DatagramPacket(container, 0, container.length);socket.receive(packet);//接收數(shù)據(jù)byte[] data = packet.getData();String receiveData = new String(data, 0, data.length);System.out.println(msgFrom+':'+receiveData);if(receiveData.equals('bye')){ break;} } catch (IOException e) {e.printStackTrace(); }}socket.close(); }}3.模擬學(xué)生端

//模擬學(xué)生public class TalkStudent { public static void main(String[] args) {new Thread(new TalkSend(7777, 'localhost', 9999)).start();new Thread(new TalkReceive(8888, '老師')).start(); }}4.模擬老師端

//模擬老師public class TalkTeacher { public static void main(String[] args) {new Thread(new TalkSend(5555, 'localhost', 8888)).start();new Thread(new TalkReceive(9999, '學(xué)生')).start(); }}5.截圖

學(xué)生端:

Java實(shí)現(xiàn)UDP多線程在線咨詢(xún)

老師端:

Java實(shí)現(xiàn)UDP多線程在線咨詢(xún)

6.總結(jié)

首先創(chuàng)建一個(gè)發(fā)送線程,里面定義要發(fā)送到的IP地址和端口,再創(chuàng)建一個(gè)DatagramSocket來(lái)進(jìn)行通信,創(chuàng)建一個(gè)BufferReader(new InputStreamReader(System.in))來(lái)獲取控制臺(tái)的輸入的數(shù)據(jù),將獲取到的數(shù)據(jù)打包進(jìn)行發(fā)送。之后創(chuàng)建一個(gè)接收線程,里面定義自身的端口即可,再創(chuàng)建一個(gè)和發(fā)送端一樣的DatagramSocket來(lái)進(jìn)行通信,接收數(shù)據(jù)進(jìn)行打印輸出即可。最后模擬學(xué)生端和老師端,創(chuàng)建這兩個(gè)線程來(lái)進(jìn)行通信。學(xué)生發(fā)送線程到的端口是老師的接收端口,老師發(fā)送的端口是學(xué)生的接收端口,這樣才能互相通信。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 环氧铁红防锈漆_环氧漆_无溶剂环氧涂料_环氧防腐漆-华川涂料 | 电子巡更系统-巡检管理系统-智能巡检【金万码】 | 包装盒厂家_纸盒印刷_礼品盒定制-济南恒印包装有限公司 | 西安标准厂房_陕西工业厂房_西咸新区独栋厂房_长信科技产业园官方网站 | 3d打印服务,3d打印汽车,三维扫描,硅胶复模,手板,快速模具,深圳市精速三维打印科技有限公司 | 杭州高温泵_热水泵_高温油泵|昆山奥兰克泵业制造有限公司 | 北京浩云律师事务所-法律顾问_企业法务_律师顾问_公司顾问 | 耐酸碱胶管_耐腐蚀软管总成_化学品输送软管_漯河利通液压科技耐油耐磨喷砂软管|耐腐蚀化学软管 | 避光流动池-带盖荧光比色皿-生化流动比色皿-宜兴市晶科光学仪器 东莞爱加真空科技有限公司-进口真空镀膜机|真空镀膜设备|Polycold维修厂家 | 防水接头-电缆防水接头-金属-电缆密封接头-不锈钢电缆接头 | 钛合金标准件-钛合金螺丝-钛管件-钛合金棒-钛合金板-钛合金锻件-宝鸡远航钛业有限公司 | 精密模具-双色注塑模具加工-深圳铭洋宇通 | 绿叶|绿叶投资|健康产业_绿叶投资集团有限公司 | 耐火浇注料价格-高强高铝-刚玉碳化硅耐磨浇注料厂家【直销】 | 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库-首页-东莞市傲马网络科技有限公司 | 扒渣机,铁水扒渣机,钢水扒渣机,铁水捞渣机,钢水捞渣机-烟台盛利达工程技术有限公司 | 无线联网门锁|校园联网门锁|学校智能门锁|公租房智能门锁|保障房管理系统-KEENZY中科易安 | 烘干设备-热泵烘干机_广东雄贵能源设备有限公司 | 小型单室真空包装机,食品单室真空包装机-百科 | 振动筛,震动筛,圆形振动筛,振动筛价格,振动筛厂家-新乡巨宝机电 蒸汽热收缩机_蒸汽发生器_塑封机_包膜机_封切收缩机_热收缩包装机_真空机_全自动打包机_捆扎机_封箱机-东莞市中堡智能科技有限公司 | 【直乐】河北石家庄脊柱侧弯医院_治疗椎间盘突出哪家医院好_骨科脊柱外科专业医院_治疗抽动症/关节病骨伤权威医院|排行-直乐矫形中医医院 | 过跨车_过跨电瓶车_过跨转运车_横移电动平车_厂区转运车_无轨转运车 | 老城街小面官网_正宗重庆小面加盟技术培训_特色面馆加盟|牛肉拉面|招商加盟代理费用多少钱 | 贴片电容-贴片电阻-二三极管-国巨|三星|风华贴片电容代理商-深圳伟哲电子 | 重庆中专|职高|技校招生-重庆中专招生网 | 篷房|仓储篷房|铝合金篷房|体育篷房|篷房厂家-华烨建筑科技官网 知名电动蝶阀,电动球阀,气动蝶阀,气动球阀生产厂家|价格透明-【固菲阀门官网】 | 溶氧传感器-pH传感器|哈美顿(hamilton) | SEO网站优化,关键词排名优化,苏州网站推广-江苏森歌网络 | 电液推杆生产厂家|电动推杆|液压推杆-扬州唯升机械有限公司 | 集装袋吨袋生产厂家-噸袋廠傢-塑料编织袋-纸塑复合袋-二手吨袋-太空袋-曹县建烨包装 | 校园气象站_超声波气象站_农业气象站_雨量监测站_风途科技 | 反渗透水处理设备|工业零排放|水厂设备|软化水设备|海南净水设备--海南水处理设备厂家 | 涡轮流量计_LWGY智能气体液体电池供电计量表-金湖凯铭仪表有限公司 | 包装机传感器-搅拌站传感器-山东称重传感器厂家-济南泰钦电气 | 武汉EPS线条_EPS装饰线条_EPS构件_湖北博欧EPS线条厂家 | led全彩屏-室内|学校|展厅|p3|户外|会议室|圆柱|p2.5LED显示屏-LED显示屏价格-LED互动地砖屏_蕙宇屏科技 | 免费分销系统 — 分销商城系统_分销小程序开发 -【微商来】 | 运动木地板厂家,篮球场木地板品牌,体育场馆木地板安装 - 欧氏运动地板 | 整车VOC采样环境舱-甲醛VOC预处理舱-多舱法VOC检测环境仓-上海科绿特科技仪器有限公司 | 防爆鼓风机-全风-宏丰鼓风机-上海梁瑾机电设备有限公司 | 手板_手板模型制作_cnc手板加工厂-东莞天泓 |