`
神说要好好学习
  • 浏览: 5779 次
  • 性别: Icon_minigender_2
最近访客 更多访客>>
社区版块
存档分类
最新评论

多线程服务器

 
阅读更多
客户端向服务器发出连结申请的时候,一个服务器只能同时与一个客户端相连接。就相当于当

同时有多个客户端申请连结时,这些客户端要排队,只有上一个客户端退出的时候,下一个客

户端才能连结的上,也就是“阻塞”现象。要解决这个问题,就要用到服务器的多线程。


服务器的多线程不是每启动一个线程,就创建一个服务器,而是每当有一个客户端申请连结的

时候,就启动一个服务器连结客户端的方法。也就是说,多线程不是创建服务器的多线程,而

是连结客户端的多线程。

线程代码:
public class ServerThread extends Thread{
	private ChatServer cs;
	private Socket client;
	public ServerThread(Socket client, ChatServer cs){
		this.client = client;
		this.cs = cs;
	}
	public void run(){
		doconn(client);
	}
	
	/**
	 * 处理连结之后的方法
	 * @param client
	 */
	public void doconn(Socket client){
           //方法内容略
             }
}

启动线程部分代码
while(true){
				Socket client = server.accept();
				ServerThread st = new ServerThread(client,this);
				st.start();
}


多线程这里,我出现了一次很纠结的逻辑混乱情况,所以在写代码之前,一定要先想好逻辑关系,不然容易出错
分享到:
评论

相关推荐

    并发服务器-多线程服务器详解

    ### 并发服务器—多线程服务器详解 #### 一、引言 在现代软件开发中,特别是网络应用和服务的设计中,对并发处理能力的需求日益增长。为了满足高并发访问的需求,开发人员常采用多线程技术来构建高效、响应迅速的...

    初识通信——多线程服务器的建立

    在IT行业中,多线程服务器的建立是网络编程的一个重要组成部分,特别是在高并发场景下,如Web服务、游戏服务器等。本文将详细讲解如何初识通信,并以多线程服务器的构建为例,来阐述相关技术点。 首先,理解多线程...

    qt写的多线程服务器端

    本项目"qt写的多线程服务器端"是基于Qt库构建的一个多线程服务器程序,旨在处理多个客户端的并发连接。下面我们将详细探讨Qt、多线程以及服务器编程相关的知识点。 1. **Qt库**: Qt库提供了丰富的API,用于创建跨...

    Java多线程服务器编程

    简单的多线程服务器实现,东北大学网络实验之一

    linux多线程服务器编程

    这是在公司同事那里看到的一本书,写的是linux多线程服务器编程

    简单的多线程服务器

    在IT领域,多线程服务器是一种能够同时处理多个客户端连接请求的服务器程序设计模式。这里的“简单的多线程服务器”示例可能是一个基础的网络编程练习,它利用了多线程技术来提升服务效率,同时提供了同步IO和异步IO...

    C#编写Socket Sever多线程服务器

    在本文中,我们将深入探讨如何使用C#语言编写一个基于Socket的多线程服务器。C#作为.NET框架的一部分,提供了强大的网络编程能力,使得开发者能够方便地构建高性能、可扩展的网络应用程序。Socket Server通常用于...

    TCP多线程服务器demo

    本示例中的“TCP多线程服务器demo”是针对初学者设计的一个实践项目,旨在帮助理解如何利用多线程技术来提高服务器的并发处理能力。 首先,TCP协议的基本概念是需要了解的。TCP是一种点对点的通信协议,它通过三次...

    客户端服务器,多线程服务器,远程RMI会议

    在IT领域,客户端-服务器架构、多线程服务器和远程方法调用(RMI)是构建分布式系统中的关键概念。让我们深入探讨这三个主题,并了解它们如何在Java编程中实现。 首先,客户端-服务器架构是一种通信模型,其中...

    java 多线程服务器

    java 实现绘制指针时钟 和多线程服务器java 实现绘制指针时钟 和多线程服务器java 实现绘制指针时钟 和多线程服务器java 实现绘制指针时钟 和多线程服务器java 实现绘制指针时钟 和多线程服务器java 实现绘制指针...

    java实现的多线程服务器

    在Java编程语言中,实现一个多线程服务器是一项关键任务,特别是在构建高性能、高并发的网络应用时。这个“java实现的多线程服务器”项目很可能包含了一个基础的服务器框架,能够处理来自多个客户端的并发请求。下面...

    HTTP多线程服务器下载

    HTTP多线程服务器下载是网络编程中的一个重要概念,主要应用于提高大文件下载的效率和速度。在VC++环境中实现这样的功能,需要理解HTTP协议、多线程编程以及文件I/O操作的基本原理。以下是对这些知识点的详细解释: ...

    多线程服务器、客户端程序

    在多线程服务器和客户端的场景中,Windows API提供了创建和管理线程的功能,如CreateThread和TerminateThread函数,使得开发者能够同时处理多个并发任务。 接着,我们关注的是VC++,它是Microsoft Visual Studio的...

    Linux下基于多线程的服务器程序设计.pdf

    "Linux下的多线程服务器程序设计" Linux操作系统是当前最流行的开源操作系统之一,它广泛应用于服务器领域。设计一个高性能的服务器程序是非常重要的,然而传统的服务器工作方式存在三个显著的缺点:fork开销大、...

    Qtcpserver实现多线程服务器,里面包括单线程普通服务器

    本文将深入探讨如何使用Qtcpserver实现多线程服务器,以及单线程普通服务器的工作原理。 首先,让我们了解一下单线程服务器。在单线程模型中,服务器接收到一个连接请求后,会暂停当前连接的处理,去处理新的连接。...

    多线程服务器.rar

    在IT领域,多线程服务器是一种能够同时处理多个客户端连接请求的服务器实现方式。这种设计模式充分利用了现代计算机的多核或多处理器能力,提高了服务的并发性和响应速度。本篇文章将深入探讨多线程服务器的工作原理...

    多线程 服务器 源码

    这篇详细的讲解将深入探讨VC++环境下如何实现多线程服务器的源码实现,这对于我们理解网络通信编程至关重要。 首先,让我们来理解一下“多线程”这个概念。在计算机程序设计中,多线程是指在一个进程中同时运行多个...

    学习网络编程5-多线程服务器.ppt

    学习网络编程5-多线程服务器 多线程服务器模型是指在服务器端使用多个线程来处理客户端的请求,从而提高服务器的处理能力和响应速度。该模型可以解决单线程服务器模型的缺陷,即单线程服务器模型只能处理一个客户端...

    多线程 服务器端-客户端 c

    总结来说,多线程服务器端-客户端C编程涉及到网络编程基础,如套接字、连接处理、I/O多路复用,以及多线程编程,包括线程创建、同步与通信。通过这些技术,我们可以构建高效、可扩展的网络应用。

    Qt多线程服务器

    **Qt多线程服务器详解** 在软件开发中,特别是在服务器端编程中,多线程技术是一种常见的优化手段,用于提高程序的并发处理能力。Qt是一个跨平台的C++图形用户界面应用程序开发框架,它提供了丰富的多线程支持,...

Global site tag (gtag.js) - Google Analytics