www.3112.net > jAvA TCP做聊天程序是应该一个聊天窗口一个线程还...

jAvA TCP做聊天程序是应该一个聊天窗口一个线程还...

一个聊天窗口不是相当于一个进程吗?那聊天窗口进行通信不得建立一个套接字吗?个人感觉两个是一个东西啊

服务器监听端口 做个无限循环 接到一个连接就创建一个通道线程,并将通道线程存储到一个list集合中 import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.S...

这么搞: 客户端主程序 int main() { 一个单链表的头节点 root; 一个读写锁 //用来控制链表的操作 开始监听 while(1) { if监听到了新的tcp连接 { malloc一个链表节点p 取得写锁 把p加到链表的最后面 启动一个新的线程 xinxiancheng(socketfd,p);...

如果你的意思是一对一的话,直接写就得了,用单线程。 如果你的意思是一对多的话,服务端要多线程了。每监听到一个,就要建立多一个线程。

不对,你应该单独写个一个处理线程类,如果需要的连接就new一下,因为每次new一下,线程的名字都不一样,但如果后期要用到销毁的时候,最好写一个hasMap存储这些线程,当下线时,就根据values来销毁或遍历一下hasMap,获取到线程的名字,然后就d...

线程是计算机任务执行的最小单位,多线程也就是说一台计算机同时可以干好几件事,例如同时打字和听音乐,而单线程就是打字时只能打字,其他的干不了。 udp和tcp是两种协议,网络协议是分层的,他们都是传输层协议。所以协议就是一组约定的规则,...

你在阻塞的代码处使用_beginthread创建一个线程来执行相关代码不就可以了。

你accept得到一个新的连接后,再创建线程(把连接socket传给线程),用这个线程专门接收这个连接的数据,就不会有问题了。

using System;using System.Collections.Generic;using System.Net;using System.Net.Sockets;using System.Threading;using System.Text;using System.IO;class Server{ Socket _listenSocket; Dictionary _clients; public Server(int port) {...

第一个问题:(我当你是Unix系统了) 用pthread_create创建线程在第一个线程中sleep 5秒send消息,第二个sleep 3秒send消息,while循环,(CPU会自己切换时间片的,你试试就知道了) 第二个问题: 如果server挂了,客户端消息发送函数send的返回...

网站地图

All rights reserved Powered by www.3112.net

copyright ©right 2010-2021。
www.3112.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com