基于UDP通信的代码优化

本文对前篇基于UDP的通信代码进行优化,引入多线程实现双向通信,使得发送和接收数据可以在同一类中同时进行,模拟了简单的聊天功能。
摘要由CSDN通过智能技术生成

前言

        前篇使用基于UDP来创建了发送端及输出端,本篇对前篇代码进行进一步优化.


        由于前篇的是创建了输入端和输出端,有一边专门进行发送数据,一边专门接收数据,这样显得非常不对,在显示生活中其实是两边应该可以进行对话的,类似聊天软件进行互动,可以你一句,我一句的聊天。本篇就对将代码进行进一步优化,是两边都可以进行发送数据和接收数据。

        由于接受数据和发送数据其实是两个功能,放到一个类中,就可能会出现只执行一个方法,这就不得不使用多线程技术,这样就可以实现同时又是接受方,又是输出方。

        优化代码如下:

        

public class Chat {
    public static void main(String[] args) {
        //创建键盘录入
        Scanner scanner = new Scanner(System.in);
        //发送数据
        new Thread(new Runnable() {
            @Override
            public void run() {
                //因为会有异常,所以需要抓一下异常
                try (
  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值