APP下载

基于Java多线程技术的网络编程研究

2017-03-06

环球市场 2017年35期
关键词:网络通信线程功能性

王 弢

天津冶金集团中兴盛达钢业有限公司

1 Java多线程

线程的是java.lang.Thread类,在虚拟机启动之后,通常只有Java类的main方法这个普通线程运行,运行时可以创建和启动新的线程;守护线程(damonthread),守护线程在后台运行,提供程序运行时所需的服务。当虚拟机中运行的所有线程都是守护线程时,虚拟机终止运行。Java线程模型涉及可以动态更改的线程优先级。线程的优先级是从1到10之间的一个数字,数字越大表明的任务越紧急。

JVM的标准需要先选用较高优先级的线程,再过渡到较低线程,因此,整个标准在处理相同级别的线程时通常采取随机原则,处理线程的关键因素为基层操作系统。

2 网络通信中Java多线程技术中线程的工作原理

由于Java多线程中各个线程是并发的,因此这些线程相互之间单独且互不依赖的,相反这些线程之间存在着竞争关系,它们互不相让,共同竞争着CUP资源和存储空间,甚至还会发生还阻断其他的线程共享CPU资源和存储空间的异步访问情况,这就是线程之间的相互牵制。比如,在网络通信的多线程实际应用过程当中,多线程不仅需要同步进行通信访问,且多个线程互相之间的也可以牵制,限制其他通信访问。

在具体的网络通信过程中,多线程的工作步骤如下:首先我们必须让一个线程执行符合条件的指令,只有当条件满足的时候方可让线程二执行,然后,当其中线程二执行完指令后,马上通知条件线程继续执行条件指令,当条件满足又让其他线程再次执行,如此不停循环往复让多个线程不停的执行下去,从而让众多的网络通信不停的运转下去。

3 Java多线程于网络编辑中的具体应用

Java属于比较强大的编程设计语言,其在网络编程方面也展现出极大的优势,在功能上表现出极为强大的作用,由此推动这一编程设计程序得以广泛应用。一般来说,针对支持Java的浏览器而言,需要内置Java虚拟机,这在某种程度上推动Java的小程序能够正常的应用,并且可以在网络上传送及运行。Java的功能性得到了极好的体现,这其中给予分布对象环境,Socket通信机制,还有用于Internet的URL对象类群等,除此之外,还给予可以处理HTTP请求,还有应答,从而用于扩充Web服务器的Servlet。

3.1 建立服务器类

服务器是所有程序运行的核心所在,不仅仅是客户,还有服务器模型,都发挥了极为关键性的作用,客户端针对服务器来说,前者对于后者请求几乎是随意的,多个请求同时到达也是有可能出现的。一般来说,基本存在两种服务器方案,其一是并发服务器,其自身具有极为显著的特征,主要是依据系统启动逐步形成守护线程,没有客户请求的情况下,基本处于等待状态,如果客户需要到达,服务器就会发挥自身的功能性作用,随即产生子线程,然后借由子线程去完成请求,再回到等待状态,并发服务器,又被称为主服务器,而子线程又称为从服务器,这种服务器模式具有非常重要的作用,从根本上消除聊天室的弊端,完善客户端结构。这其中服务器自身的功能非常明确,也就是负责用户注册,还有用户的管理,监听连接请求,并且负责响应链接,并同时进行接收用户信息,传递用户信息,而客户端则负责用户界面,包括其显示与更新信息,发送聊天记录,并且接收相应用户信息。

3.2 构建服务器线程类

新用户登陆时,服务器端应用newServerThread单独创建,同时启动服务器线程,自从其产生直至灭亡,在整个过程中都涉及到服务内容,从某种意义上来说,该线程作用非常显著且目的明确,针对的是服务器与用户信息,负责信息发送及接收,从而构建属于自身的功能性体验。

3.3 组建客户端类

客户端的构成相对来说比较固定,一般情况下都是由JavaApple小程序,还有Java程序组成,而上述程序的功能也相对比较固定,主要是为了达到用户界面的通信控制,还有服务器控制,根据其功能性可以细分为两个部分,并且是相对独立的两个部分,然后再由不同的类实现。第一部分,是对管理图形进行界面管理,由类ChatApplet实现;而对于第二部分,则需要实现通信功能,还有服务器功能,主要涵盖用户状态信息,还有聊天信息传递,主要是通过由类Clinent实现。

3.4 构建客户端线程

客户端线程也是多线程的一种重要形式,相较于服务器线程而言,在功能上相对来说比较类似,服务的对象也是非常明确,即客户端与用户信息,实现两者信息的发送,还有相应的接收工作,上述功能实现基本上也和服务器线程比较相似,因而对于客户端线程的构建,可以参考服务器线程的相关介绍。

总而言之,在信息化高度发达的今天,为客户提供快而准的服务是每个行业发展的必然趋势,网络通信与我们每个人都有着密切关系,可想而知它在我们生活工作当中的重要性之大。为了更好让学习多线程技术的知识,我们非常有必要Java多线程技术有一个深刻的认识,认识其对于网络通信的重要性。未来,我们还将更好的晚上Java多线程技术,让其更好的为我们未来的工作生活服务,加快计算机信息化的发展。

[1]程俊波.基于java多线程的实时数据库系统[J].网络安全技术与应用,2016(10):67-68.

[2]陈伟.基于扩展同步序列的Java多线程程序可达性测试方法探讨[J].电子世界,2016(13):168.

猜你喜欢

网络通信线程功能性
基于十二指肠异常探讨功能性消化不良的中医研究进展
基于C#线程实验探究
基于国产化环境的线程池模型研究与实现
线程池调度对服务器性能影响的研究*
基于网络通信的智能照明系统设计
一种功能性散热板的产品开发及注射模设计
网络通信中信息隐藏技术的应用
基于网络通信的校园智能音箱设计
谈计算机网络通信常见问题及技术发展
不同功能性聚合物在洗涤剂中的应用