UDP 기반 Socket 멀티스레드 통신 단순화
4732 단어 Socket
public class Client {
public static void main(String[] args) throws IOException {
InetAddress address = InetAddress.getByName("127.0.0.1");
int port = 8888;
byte[] bytes= " ".getBytes();
DatagramPacket datagramPacket = new DatagramPacket(bytes,bytes.length,address,port);
DatagramSocket datagramSocket = new DatagramSocket();
datagramSocket.send(datagramPacket);
byte[] bytes2 = new byte[1024];
DatagramPacket datagramPacket2 = new DatagramPacket(bytes2, bytes2.length);
datagramSocket.receive(datagramPacket2);
String data = new String(bytes2,0,bytes.length);
System.out.println(data);
}
}
/*
* udp
*/
public class Server {
public static void main(String[] args) throws IOException {
DatagramSocket datagramSocket = new DatagramSocket(8888);
System.out.println(" ");
while (true) {
byte[] bytes = new byte[1024];
DatagramPacket datagramPacket = new DatagramPacket(bytes, bytes.length);
datagramSocket.receive(datagramPacket);
String a = new String(bytes,0,bytes.length);
System.out.println(a);
ServerThread serverThread = new ServerThread(datagramSocket,datagramPacket);
// ,
serverThread.setPriority(4);// , 【1,10】 5
serverThread.start();
}
}
}
public class ServerThread extends Thread {
public DatagramSocket datagramSocket;
public DatagramPacket datagramPacket;
public ServerThread(DatagramSocket datagramSocket,DatagramPacket datagramPacket){
this.datagramSocket = datagramSocket;
this.datagramPacket = datagramPacket;
}
@Override
public void run() {
try {
byte[] bytes2 =" ".getBytes();
InetAddress address = datagramPacket.getAddress();
int port = datagramPacket.getPort();
DatagramPacket datagramPacket2 = new DatagramPacket(bytes2, bytes2.length,address,port);
datagramSocket.send(datagramPacket2);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Java Socket 프로그래밍 인스턴스(2) - UDP 기본 사용하나.서버 코드: 2.클라이언트 코드: 상기 코드의 UDP 서버는 단일 라인으로 클라이언트를 한 번에 한 번만 서비스할 수 있습니다. 다음은 본문의 전체 내용입니다. 더 많은 Java 문법을 보십시오.《 》、《 》、...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.