網(wǎng)絡編程技術(shù)論文
網(wǎng)絡編程技術(shù)論文
科學技術(shù)的不斷發(fā)展推動了網(wǎng)絡信息化時代的發(fā)展,隨著計算機技術(shù)不斷的發(fā)展,各種網(wǎng)絡編程技術(shù)日新月異。下面是由學習啦小編整理的網(wǎng)絡編程技術(shù)論文,謝謝你的閱讀。
網(wǎng)絡編程技術(shù)論文篇一
Java多線程技術(shù)的網(wǎng)絡編程探討
摘 要:作為Java中的主要應用型技術(shù),多線程技術(shù)具有并行機制、交互性能和實時控制等特征。因此,它具有強大的安全性能,并據(jù)此而被廣泛應用在網(wǎng)絡編程當中。因此,本文將圍繞Java多線程技術(shù)展開進一步的討論,首先針對其進行了簡單的介紹,讓人們對此有一個較為清晰的了解,然后分析了如何在網(wǎng)絡編程中應用Java的多線程技術(shù)進行編程,從而使得編程開發(fā)人員可以有效提高程序運行的效率。
關(guān)鍵詞:Java;多線程技術(shù);網(wǎng)絡編程
中圖分類號:TP311.1
由SUN公司開發(fā)的一種全新的計算概念Java,它首先是一種程序設計語言,具有較大的安全性能,并能夠最大限度的利用網(wǎng)絡進行程序的傳輸。因此,Java是當前適合于分布式計算的一種新生代網(wǎng)絡應用開發(fā)語言。由于Java提供了很多系統(tǒng)性模塊來支持基于TCP/IP協(xié)議的編程,因此,它在訪問網(wǎng)絡資源的時候,就像存取本地文件一樣方便快捷。因此,我們將在本文中具體探討下Java多線程技術(shù)在網(wǎng)絡編程中的具體應用,從而讓人更好的理解其可移植性、健壯性、安全性等很高的性能。
1 Java多線程技術(shù)概述
Java設計語言的思想基礎就是當前的大部分操作系統(tǒng)都已經(jīng)實現(xiàn)了多線程調(diào)度。因此,Java虛擬機都可以對類庫進行多線程設計。一般來說,多線程就是指計算機運行程序時所具有的多個控制流。即使是最簡單的Applet,它也是由多個線程來共同完成的。因此,我們說,Java語言支持應用程序進程內(nèi)部的多個執(zhí)行線程的并發(fā)執(zhí)行。在這樣一個多線程程序中,它可以分配一個線程來讀取相關(guān)的數(shù)據(jù),同時讓另外一個線程來對數(shù)據(jù)進行處理,又讓第三個線程把數(shù)據(jù)傳輸?shù)綀D形卡上去。這三個線程可以共同運行。那么,我們就會發(fā)現(xiàn),數(shù)據(jù)讀取的同時,還可以處理數(shù)據(jù),即大大提高了程序的運行性能。
Java的這種多線程技術(shù),其線程屬性也是較為特殊的。我們要想了解其并更好的使用其,就應該對Java實時系統(tǒng)等有一個較為全面且清晰的了解,還要更多的了解線程體、線程的生命周期、線程組、幽靈線程等。由于所有操作都是發(fā)生在線程體中,我們應該分解出幾種不同的線程狀態(tài),即新線程狀態(tài)、可運行狀態(tài)、非運行狀態(tài)。而線程調(diào)度是JVM對運行的多個線程進行系統(tǒng)級的協(xié)調(diào),數(shù)字越大表明線程的級別越高。一般來說,Java將線程的優(yōu)先級分為10個等級,分別使用了分別用1-10的數(shù)字進行標示。其中,高優(yōu)先級的線程會在低優(yōu)先級線程之前得到執(zhí)行,優(yōu)先級相同的線程則會采用輪轉(zhuǎn)的方式來分配CPU時間片。此外,在Java中,每一個線程都可以成為幽靈線程,它是應用中典型的獨立線程,其方法一般是通過無限循環(huán)來等待服務請求。而Java線程中的每一個都是線程組中的成員,這些不同的線程組會提供一種機制來讓多種線程集中到一個對象內(nèi)部,并對它們進行整體控制與操作。Java線程的實現(xiàn)往往是依據(jù)多線程應用程序繼承或?qū)崿F(xiàn)對象的不同,采取線程類Thread和Runnable接口兩種方式來實現(xiàn)的。應該來說,Java多線程技術(shù),有著自身的優(yōu)勢和劣勢。就優(yōu)勢來說,它能夠帶來更好的交互性能和實時控制性能,還具有更快的程序響應速度。當沒有處理任務出現(xiàn)的時候,它可以把處理器的時間分配給其他方面的任務,還可以隨時停止任務,進而將各個任務進行優(yōu)化。但是,它也有著一定的劣勢,即當在進行資源共享時,其程序運行的速度較慢,還對線程管理要消耗額外的CPU開銷,甚至還會產(chǎn)生死鎖等多線程的不良癥狀。
2 Java多線程技術(shù)的網(wǎng)絡編程具體應用
Java多線程技術(shù)在網(wǎng)絡編程中的具體應用,其實質(zhì)就是指將程序任務分成幾個并行的子任務分別進行的編程。事實上,對于Java來說,我們把多線程機制蘊含在語言設計中是其最為顯著也是最為重要的一個特征。在每一個進程中,都有多個線程。這些線程在操作系統(tǒng)的共同調(diào)度下實現(xiàn)了并發(fā)執(zhí)行,可以占有整個系統(tǒng)性資源。那么,為了減少并發(fā)程序設計的困難,提高多線程應用程序的執(zhí)行效率,我們應該把Java多線程技術(shù)應用到編程當中去,從而使得程序開發(fā)人員可以利用多線程編程接口來寫出支持多線程的應用程序。事實上,Java在網(wǎng)絡編程方面的功能是非常強大的,它可以使得Java的小程序能在網(wǎng)絡上完全地傳送和運行,還可以擴充Web服務器功能的Servlet等技術(shù),并監(jiān)聽客戶端的連接請求和響應連接,這些都是其廣泛流行的主要原因所在。
那么,Java多線程技術(shù)如何在網(wǎng)絡編程中實現(xiàn)具體應用呢?具體來說,我們應該首先建立服務器類的try。這是因為服務器是客戶/服務器模型中業(yè)務過程處理的核心所在,我們要能夠使得在出現(xiàn)異常服務時,能夠及時多個請求同時到達服務器的情況。一般來說,我們有兩種服務會等待用戶連接器實現(xiàn)方案,即并發(fā)服務器和反復服務器。其中,前者有一個接收用戶連接請求點時隨系統(tǒng)啟動而產(chǎn)生的一個守護線程,后者則是并發(fā)服務器實現(xiàn)的關(guān)鍵所在。其次,我們還應該在建立服務器線程類中,按照先來先服務的原則進行服務器的響應,這就需要使用Java多線程技術(shù)來實現(xiàn)這種服務器類的設計工作。該線程的產(chǎn)生到消亡都是只為一個用戶提供服務。此外,Java多線程技術(shù)還應該在網(wǎng)絡編程中建立客戶端類的程序。所謂客戶端就是指由一些Java Apple小程序和Java程序組成的,它們的主要功能就是現(xiàn)用戶界面以及和服務器的通信控制。根據(jù)它們不同的功能進行劃分的話,我們可以把它們分為兩個相對獨立的部分,即主要管理圖形用戶界面的第一部分和實現(xiàn)和服務器的通信的第二部分,并建立客戶端線程類,進而實現(xiàn)客戶端與該用戶有關(guān)的信息的發(fā)送與接收等。
因此,Java多線程技術(shù)的網(wǎng)絡應用體系結(jié)構(gòu)主要表現(xiàn)為客戶/服務器模式,其中的服務器端主要負責數(shù)據(jù)和圖像等的存儲、維護、管理以及傳遞,客戶端則負責人機界面的操作、送出需求及顯示收回的數(shù)據(jù)。而網(wǎng)絡應用體系結(jié)構(gòu)則分為Socket客戶和Socket服務器。其中,Socket客戶以Java Applet形式呈現(xiàn),Socket機制則是面向客戶/服務器模型設計的雙向鏈路的一端,其通常用來實現(xiàn)客戶端和服務器端的連接工作,它分為有聯(lián)接和無聯(lián)接兩種通訊方式,可以在不同的主機和進程之間轉(zhuǎn)發(fā)進行。應該來說,服務器端Socket程序是網(wǎng)絡應用程序的核心,而客戶端Socket應用程序與服務器端Socket應用程序在流程上很相似。當我們在進行程序調(diào)試時,應該讓兩端的端口號設為一致,建立連接后要確定輸入和輸出流,并不同時使用一個端口。
3 結(jié)束語
綜上所述,多線程程序的編寫本來是一件頗為復雜繁瑣且不太安全的事情。但是,自從出現(xiàn)了Java多線程技術(shù)之后,程序開發(fā)人員就可以充分利用該技術(shù)來編寫出更為安全、高效的多線程應用程序,也使得多線程編寫程序變得簡單易行了。因此,我們利用Java多線程技術(shù)進行網(wǎng)絡編程,是網(wǎng)絡上很多應用程序得以實現(xiàn)的有效途徑,這也使得該技術(shù)得以在全世界范圍內(nèi)廣泛開展與應用起來。
參考文獻:
[1]金勇華,曲俊生.Java網(wǎng)絡高級編程[M].北京:人民郵電出版社,2001.
[2]劉巍,唐學兵.利用Java的多線程技術(shù)實現(xiàn)數(shù)據(jù)庫的訪問[J].計算機應用,2002,22(12):121-123.
[3]張衛(wèi)民.Java語言及其應用[M].北京:清華大學出版社,1996.
作者簡介:阿不都艾尼・阿不都肉素力(1975-),男,維吾爾族,新疆烏魯木齊人,計算機應用技術(shù)碩士,研究方向:軟件開發(fā)、網(wǎng)絡編程。
作者單位:新疆職業(yè)大學信息技術(shù)學院,烏魯木齊 830001
點擊下頁還有更多>>>網(wǎng)絡編程技術(shù)論文