Java多线程技术的网络编程探讨

2017-02-27 14:42徐凯
电脑知识与技术 2016年31期

徐凯

摘要:随着近几年科学技术、计算机技术、软件技术等的快速发展,计算机编程技术的语言多种多样,适应到各个行业、特殊需求中,计算机各种程序语言为我们的各个行业提供了极大的便捷。当前,尤其是Java 程序语言在程序编写过程中起到非常重要的作用,该Java语言程序也已经应被应用到各个领域中,有关科学实践、理论技术在这些领域中发挥着非常重要的作用。在大型复杂构架的网络编程中被广泛采用Java程序设计语言,尤其在Java双线程设计表现出了特别出色的安全性与快速性。程序设计人员在编程时候利用Java 的多线程编程接口,结合开发人员写出关于支持双线程的应用程序,通过硬件与软件的完美结合,有效地缩短了开发时间,更好地满足客户需求。通过这样设计,更重要的是减小了程序执行时所用的时间,使得系统更加稳定、可靠。笔者以开发一个Java双线程系统实例为例说明Java双线程网络编程是如何实现。

关键词:Java;多线程技术;网络编程

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)31-0069-02

自从SUN 公司开发出适合于分布式计算的新一代面向对象程序设计语言----Java,这种程序開发语言是一种非常具有新概念的高级语言。要想作为一种好的、用着稳定、可靠的程序语言;首先,它本身理解要简单、面向对象、不依赖于机器的结构、能够由经过初步训练的编程语言人员就可以胜任、具有可移植性、健壮性、安全性、能够为多线程接口提供同时并行发生信息的机。其次,网络要得到最大限度的高效利用,如Java程序语言开发的程序可以在网络上高效传输、信息交换,在交换期间不收CPU和安装环境限制。

Java编制语言如今已经成为 Internet 应用的主要开发语言,希望通过此次研究、探讨为未来网络通信的发展提供参考和建议。

1 Java多线程技术

一旦提到Java编程语言的多线程技术,每一位程序设计者、网络设计者必须对多线程有一个深刻的认识。这一类程序执行过程中同一时间可以执行多个指令,这些不同指令之间是相对独立的;即所谓的几种指令流就有几个线程在执行,这种执行方式就定义为线程数。这些线程之间的协调都是由电脑、工作站操作系统来进行独立匹配、调整、控制的。

为了使得在网络通信操作起来更为简单,设计者巧妙地利用多线程技术共享一个存储空间,这与进程有本质的区别,因为进程有自己独立的存储空间,相反,线程却没有。通过将其应用到网络编程中,可以并行发送多个通道执行指令,让网络运行更快、更高效。

2 多线程实现方式与启动

3 线程睡眠、优先级、yield、join

在线程网络编程技术中有几个非常重要的概念,这些概念在编程接口和程序执行过程中必须提前设置好。线程睡眠指定的毫秒数,参数是指线程不会运行的最短时间。sleep是Thread类的静态方法,所以一个线程无法使另外一个线程进入睡眠状态,不要使用sleep做定时器。不能通过设置线程的优先级来控制线程的执行先后顺序,Thread类中定义了三个优先级1、5、10。

join,Thread类的非静态方法。如果线程B在线程A完成工作之前不能够进行它的工作,则可以让线程B“加入到”线程A。这也就意味着知道线程A执行完成,线程B不会变为可运行的。

程序在运行过程中有时候容易锁死,这主要是多线程并发执行指令流的时候。为了防止锁死问题,我们采用以下几点来就解决此问题:①所有竞争的资源编序号,按照序号或者优先级来执行需要的指令;②将多个共享资源组成一组放在同一锁下。只有他们同时具备钥匙时候才能顺利执行程序。

4 多线程技术在网络编程中实现建立服务器类

服务器在网络建立过程中非常重要,它起着接受、转换、存储数据的作用。那么,多线程网络编程技术中建立服务器类的过程很重要,以下就详细讲述其建立的过程。在网络交换过程中数据信息处理核心是客户服务器。客户端由一些Java小程序组成, 利用这些小程序段实现的主要功能,用户界面设设计、服务器的通信控制,控制这些过程很简单,主要分为两个部分,即图形界面和服务器程序语言与多线程接口的结合,主要程序段如下:

5 结论

通过笔者对Java双线程网络程序编程开发的实例研究学习,该种编程语言设计增强了Java 作为网络程序设计语言的优势,为今后应用程序的应用提供理论支持。如今,不管怎么编写程序,满足客户需求这是最基本的要求,网络通信与我们每个人都有着密切关系,网络的快速发展势必要让我们使用更加高端的程序设计机制。我们有必要将其Java 多线程网络编程技术进行普及教育,从大学、专科等就让学生有认识。一旦走上编程设计道路,我们应该更加重视它的重要性。为了以后更好的工作生活服务,我们应该加快计算机信息化的普及发展。

参考文献:

[1] 张卫民. Java 语言及其应用[M]. 北京: 清华大学出版社, 1996.

[2] 金勇华, 曲俊生. Java 网络高级编程 [M]. 北京: 人民邮电出版社, 2001.

[3] Eckel B (美). Java 编程思想 [M]. 北京: 机械工业出版社, 1999.

[4] 刘巍, 唐学兵. 利用 Java 的多线程技术实现数据库的访问[J]. 计算机应用, 2002(12).

[5] The Source for JavaTM Technology[EB/OL]. http://java.sun.com.