网络编程|多线程网络编程

本文介绍了多线程在网络编程中的应用,通过一个实例展示了如何实现一个四则运算服务器,客户端发送表达式,服务器计算并返回结果。详细解释了线程的创建和使用,以及在服务器端如何处理多个客户端请求。同时提供了Console使用方法的参考链接。
摘要由CSDN通过智能技术生成

回顾多线程的知识

  • 进程是应用程序执行的实例,有独立的内存空间和系统资源;
  • 线程是CPU调度和分派的基本单位,进程中执行运算的最小单位,真正在CPU上运行的是线程;
  • 使用线程的步骤:
    ①定义线程
    ②创建线程对象
    ③启动线程
    ④终止线程
  • main()方法即为主线程入口
    一个进程里可以有多个线程,但至少包含一个线程(主线程),Main(String[] args)方法是主线程;
  • 如果一个类既需要使用创建线程又需要继承某个类,可以实现Runnable接口;

多线程进行网络编程的必要

1、多次数据交互

在程序中设置一个循环,通过循环,不断地向对方发送请求。

2、使服务器同时响应多个客户端的请求

服务器端每接收到一个新的连接请求,就启动一个专门的线程与该客户端进行交互。


  • 服务器:一直监听客户请求,一旦监听到有客户请求,立即创建一个新的线程,开启线程
  • 线程:接收客户请求,给予客户一个响应
  • 客户端:发送请求到服务器端,接收服务器端的响应

范例

实现一个简单的四则运算:客户端从键盘输入四则运算表达式,但不进行运算,而是将表达式传送到服务器端。服务器端接收到表达式后进行处理和计算,将运算结果返回给客户端进行显示。

优点:将简单的交互和复杂的运算进行了有效分离,能充分发挥服务器的强大处理能力。
本例由三个类组成:ClientDemo、ServerDemo、LogicThread

/**
 * 下面是客户端程序ClientDemo。
 *思路分析: 
 * ①客户端程序首先与服务器端建立连接,连接成功后生成socket对象,并进一步建立输入流和输出流对象;
 * ②使用一个循环与服务器端进行多次数据交互:从键盘输入一个四则运算表达式,将该表达式通过输出流对象传递
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值