Java编程那些事儿97——多线程操纵示例2[Java编程]
本文“Java编程那些事儿97——多线程操纵示例2[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
12.3.2 模拟网络数据发送
在实际的网络程序开辟中,由于网络通讯普通都需求损耗时间,所以网络通讯的内容普通都启动专门的线程举行处理.
这样,在一个最简单的网络程序程序中,至少就包含了两个线程:处理界面绘制和接纳用户输入的系统线程,以及至少一个网络通讯线程.
下面以一个简单的模拟程序,实现模拟网络数据的发送功效,关于更具体的网络编程中线程的利用,可以参看后续的网络编程章节.
在该示例代码中,用户在掌握台输入需求发送的内容,程序接纳到用户的输入今后,启动一个单独的线程举行网络通讯,然后用户可以持续在掌握台举行输入.示例代码以下所示:
package example2;
import java.io.*;
/**
* 模拟网络数据发送的测试类
*/
public class TestNet {
public static void main(String[] args) {
BufferedReader br = null;
String input;
try{
//初始化输入流
br = new BufferedReader(
new InputStreamReader(System.in));
//循环接纳输入
while(true){
System.out.println("请输入内容(quit代表退出程序):");
//读取掌握台输入
input = br.readLine();
//判断能否是完毕
if(input.equals("quit")){
break; //完毕程序
}
//模拟发送
NetDemoThread ndt = new NetDemoThread(input);
}
}catch(Exception e){
}finally{
try {
br.close();
} catch (Exception e) {}
}
}
}
package example2;
/**
* 通过担当Thread类的方法模拟网络通讯线程
*/
public class NetDemoThread extends Thread {
String data;
public NetDemoThread(String data){
this.data = data;
start();
}
public void run(){
try{
System.out.println("开始发送");
Thread.sleep(10000); //模拟网络发送的耽误
System.out.println("发送完成,发送的内容是:" + data);
}catch(Exception e){}
}
}
以上是“Java编程那些事儿97——多线程操纵示例2[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |