java关于多线程的操作
来源:才华咖 本文已影响2.7W人
来源:才华咖 本文已影响2.7W人
一般服务器端代码,每次收到一个线程,一个client就会产生:
/************************ 开始监听 **************************/
int port = 4311;
ServerSocket server = null;//服务器
Socket client = null;//客户端
try {
server = new ServerSocket(port);
} catch (IndirectionException e1) {
tln("正在监听……");
}
while(true)
{
tln("等待客户"+i);
i++;
try {
client = pt();//开始监听线程,接收到client
tln("客户地址:" + netAddress());
} catch (IOException e1) {
tln("正在等待客户");
}
}
客户端代码,启动之后便会连接服务器,得到回应之后便会形成socket连接
Socket clientsocket = null;
try {
clientsocket = new Socket("localhost",4311);
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
tStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
tStackTrace();
}
socket的'输入和输出一般用流来相互写。
()和e(),
Object()和eObject(object)。
客户端的一个线程里面同时new了多个ObjectOutputStream流是不允许的,其它的流可以。ObjectOutputStream有锁机制。
如果是一般的输入和输出流的话用:
DateOutputStream out = null;
DateInputStream in = null;
//获得输入输出流
try {
out=new DateOutputStream(utputStream());
in=new DateInputStream(nputStream());
} catch (IOException e2) {
// TODO Auto-generated catch block
tStackTrace();
}
如果是对象上的输入和输出的话用:
ObjectOutputStream out = null;
ObjectInputStream in = null;
//获得输入输出流
try {
out=new ObjectOutputStream(utputStream());
in=new ObjectInputStream(nputStream());
} catch (IOException e2) {
// TODO Auto-generated catch block
tStackTrace();
}
如果复杂之后,可以是服务器启动之后对每个客户端启动一个线程与客户端的线程进行交互。
关于Java线程的5个使用技巧
Java语言程序调试技巧与多线程问题
关于java实现线程同步的方式有哪些
Java4安卓开发教程之java的变量
java注册成windows服务程序及简单java定时关机的程序代码
计算机二级Java入门教程:Java类的基本构成
2016年java多线程面试题及答案
举例讲解Java中的多线程范文欣赏
使用ajax操作JavaScript对象的方法
java多线程面试题2017
关于java 四舍五入使java保留2位小数示例讲解
Java线程面试题
40个Java多线程问题总结
java多线程的同步和异步
java多线程教程
sun认证java程序员须知Java日志框架
浅谈如何使用java多线程
Java软件工程师
Java多线程面试题及回答
关于操作工发言多篇
java关于多线程的操作
Java入门教程:如何使用一个Java
高级Java多线程面试题及回答(15个)
java多线程同步块实例讲解素材
JAVA多线程并发下的单例模式应用