freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java論文java多線程與線程安全實踐-基于http協(xié)議的斷點續(xù)傳-資料下載頁

2024-11-16 17:12本頁面

【導(dǎo)讀】現(xiàn)實世界中的很多過程都具有多條線索同時動作的特性。特性就是內(nèi)置對多線程的支持。多線程是指同時存在幾個執(zhí)行體,按幾條不同。功能、能同時處理多個任務(wù)的功能強(qiáng)大的應(yīng)用程序。一些同時運行的線程需要。行為,這就是線程安全的問題。為了對Java多線程與線程安全機(jī)制進(jìn)行研究與。實踐,特此設(shè)計一個基于Http協(xié)議的支持多線程斷點續(xù)傳的下載程序。程序由下載任務(wù)模塊、設(shè)置模塊以及系統(tǒng)幫助模塊組成。程序提供多線程斷點續(xù)傳功能,在完成下載過程中使用多線程技術(shù)可以。較大幅度地提高下載的速度。

  

【正文】 監(jiān)控下載信息主要是為用戶提供文件下載時的相應(yīng)返回信息,方便用戶使用時能夠清楚地知道下載文件當(dāng)前運行的狀況。創(chuàng)建 DownloadListener 類,提供監(jiān)任務(wù)管理界面 新建批量任務(wù)界面 填寫任務(wù)信息欄 是否符合HTTP 請求 自動生成 URL 地址 新建任務(wù)管理界面 生成 URL 自動添加到剪貼板 完成下載 N Y 第 19 頁 共 25 頁 聽進(jìn)度( onProgress)、得到當(dāng)前內(nèi)容長度( onGetContentLength)、 onReadChunk等一些方法。分別在命令行參數(shù)執(zhí)行和用戶圖形界面中分別繼承DownloadListener 的方法。只要在 HttpTask類中實現(xiàn)監(jiān)聽就可以得到相應(yīng)的信息。監(jiān)控下載信息類圖如下: 圖 11 批量下載任務(wù)對話框 監(jiān)控下載信息順序圖 根據(jù)下載監(jiān)聽活動描述下載信息監(jiān)聽順序圖: 圖 12 監(jiān)聽下載信息順序圖 監(jiān)控下載信息實現(xiàn) 要實現(xiàn)對下載文件信息的 監(jiān)控需要先在 用戶界面中添加監(jiān)聽機(jī)制 ,需要監(jiān)視 第 20 頁 共 25 頁 的內(nèi)容主要包括:下載文件的文件名、下載文件的大小、下載任務(wù)進(jìn)行的進(jìn)度(完成的百分比)、下載任務(wù)的即時速度、剩余時間、已用時間和文件類型。 在“獲得當(dāng)前進(jìn)度”和“信息的更新”的方法模塊中都用到了“ synchronized”關(guān)鍵字 修飾 , 這表示,當(dāng)一個線程 A 使用這些方法時,其他線程想使用這些方法時就必須等待,直到線程 A 使用完這些方法。 這樣的話就有效地保證了這些線程的共享數(shù)據(jù)的一致性,從而也就保證了程序的正確性,保證了對共享數(shù)據(jù)操作的完整性,即 實現(xiàn) 了 不同線程對共享數(shù)據(jù)操作的同步 ,這是 線程安全的核心問題,在這里得到了很好的體現(xiàn)。 //獲得下載速度 protected long puteSpeed(int size) { long now = ()。 long slice = now lastTimeDataReceived。 long speed = size * 1000 / (slice == 0 ? 1 : slice)。 return speed。} protected String getSpeed(long speed) { String units[] = {B/s, KB/s, MB/s}。 if (speed 1 10) { return speed + units[0]。 } else if (speed 1 20) { return speed / (1 10) + units[1]。} return speed / (1 20) + units[2]。 } //獲得剩余時間 protected String milliSecondsToStr(long milliSeconds) { long days = milliSeconds / 1000 / (24 * 60 * 60)。 long hours = (milliSeconds / 1000 % (24 * 60 * 60)) / (60 * 60)。 long minutes = ((milliSeconds / 1000 % (24 * 60 * 60)) % (60 * 60)) / 60。 long seconds = milliSeconds / 1000 % 60。} //獲得當(dāng)前進(jìn)度 public synchronized void onProgress(final String msg) { (msg)。 ().getShell().getDisplay().syncExec( new Runnable() { public void run() { Table tasksTable = ().getTasksTable()。 List taskLogger = ().getTaskLogger()。 int index = ()。 if (index != 1 amp。amp。 第 21 頁 共 25 頁 (index).getData() == ) { (msg)。 }}} //在任務(wù)剛建立時信息的初始化 public void onGetContentLength(final String fname, long len) { = fname。 contentLength = len。 lastTimeDataReceived = ()。 Display display = ().getShell().getDisplay()。 (new Runnable() { public void run() { (new String[]{ fname, (contentLength), 0%, , , , })。 } })。 } //信息的更新 public synchronized void onReadChunk(String name, int size) { pleted += size。 long speed = puteSpeed(size)。 final String percent = (pleted * 100 / contentLength)。 final String speedStr = getSpeed(speed)。 final String timeRemain = milliSecondsToStr((contentLength pleted) / speed * 1000)。 final String timeElapsed = milliSecondsToStr(() startTime)。 final String fileType = 。 lastTimeDataReceived = ()。 Display display = ().getShell().getDisplay()。 (new Runnable() { public void run() { (new String[]{ fname, 第 22 頁 共 25 頁 (contentLength), percent, speedStr, timeRemain, timeElapsed, fileType})。 } })。 } 在完成了監(jiān)聽后,只需要在下載過程中,添加實現(xiàn)監(jiān)聽機(jī)制就能夠完成對下載信息的監(jiān)視返回。 //添加監(jiān)聽 private static final Log logger = ()。 private DownloadListener listener。 public void addDownloadListener(DownloadListener listener) { = listener。 } String msg = Starting to download URL: + ()。 (msg)。 (msg)。 try { contentLength = getResourceContentLen()。 msg = Resource Content Length is + contentLength。 (msg)。 (msg)。 ((), contentLength)。 } 結(jié) 論 隨著設(shè)計接近尾聲,我 所設(shè)計的多線程斷點續(xù)傳下 載軟件也初具規(guī)模,雖然還不是特別完善,但每一步的進(jìn)展都付出了我 的全部心思。 總體說來有以下一些成果:使用 Java 多線程技術(shù)編寫出了一個時下流行的基于 Http 協(xié)議的多線程斷點續(xù)傳程序。系統(tǒng)由 下載分類管理、任務(wù)管理、設(shè)置管理、系統(tǒng)幫助四個主模塊構(gòu)成 。 通過 Apache Jakarta Commons 下的子項目 HttpClient 包對 Http 協(xié)議進(jìn)行支持,從而下載服務(wù)器端的資源。 程序 提供多線程斷點續(xù)傳功能,在完成下載過程中使用多線程技術(shù)可以較大幅度地提高下載的速度。 通過這次畢業(yè)設(shè)計,我基本達(dá)到了當(dāng)初設(shè)下的一些目標(biāo): 學(xué)習(xí)掌握了 JAVA中線程的生命周期及狀態(tài)遷移、掌握線程的調(diào)度策略、 第 23 頁 共 25 頁 線程優(yōu)先級和線程同步等基本知識; 了解了 協(xié)議的基本知識; 學(xué)習(xí)、研究了斷點續(xù)傳的基本原理; 設(shè)計、實現(xiàn)了一個下載工具,能在互聯(lián)網(wǎng)上分段下載軟件,并支持?jǐn)帱c續(xù)傳的特性。 系統(tǒng)分析與設(shè)計過程,是對四年大學(xué)積 累下 的知識總結(jié)過程,更是進(jìn)一步學(xué)習(xí)和探索的過程。在這個過程中,我對面向?qū)ο蟪绦蛟O(shè)計、有了深刻的認(rèn)識,對Java 語言和 SWT 技術(shù)有了進(jìn)一步的掌握和了解,對系統(tǒng)的分析與設(shè)計過程有了切身的認(rèn)識和體會,并在學(xué)習(xí)和實踐過程中增長了知識、豐富了 編程 經(jīng)驗。 這次的畢業(yè)設(shè)計也讓我清醒地認(rèn)識到自身還存在很多不足的地方,還需要不斷的努力來充實自己、完善自己,只有這樣才能學(xué)無止境,以求得更大的發(fā)展。 參考文獻(xiàn) [1] 耿祥義,張躍平 .JAVA 2實用教程 (第二 版 )[M].北京 :清華大學(xué)出版社 ,2020. [2] 霍爾澤 .Eclipse集成開發(fā)工具 [M].南京: 東南大學(xué)出版社, 2020. [3] 張桂元,賈燕楓 .Eclipse開發(fā)入門與項目實踐 [M].北京: 人民郵電出版社, 2020. [4] 葉達(dá)峰 .Eclipse編程技術(shù)與實例 [M].北京: 人民郵電出版社, 2020. [5] 陳剛 .Eclipse從入門到精通 [M].北京: 清華大學(xué)出版社, 2020. [6] Hughes, Shoffner, Hamner, Java網(wǎng)絡(luò)編 程 技術(shù)內(nèi)幕 [M].北京: 國防工業(yè)出版社, 2020. [7] Horstmann, I:基礎(chǔ)知識 [M].北京:機(jī)械工業(yè)出版社, 2020. [8] Bruce 編程思想 [M].北京:機(jī)械工業(yè)出版社, 2020. [9] 劉亞賓,楊紅 .精通 Eclipse[M]. 北京 : 電子工業(yè)出版社, 2020. 計算機(jī)專業(yè)畢業(yè)設(shè)計開發(fā)環(huán)境 : , VB, VF, java 等 ,數(shù)據(jù)庫: SQL。包括 :開題報告、程序、論文、答辯 PPT,所有程序都是通過答辯的優(yōu)秀作品,質(zhì)量保證。也可代做。 我是哈爾濱工業(yè)大學(xué)計算 機(jī)專業(yè)畢業(yè)的學(xué)生我賣的畢業(yè)設(shè)計都是新做出來的而且是學(xué)生親手做的符合 第 24 頁 共 25 頁 學(xué)生要求如果你在別的店賣來的都是很專業(yè)的人員做的一看就不是學(xué)生自己親手做出來的,而且其他店不提供售后我們提供售后服務(wù)及技術(shù)支持和答辯技巧 . Q Q: 982465840 旺旺:誠信源代碼之家 電話: 13836381662 店鋪地址: 全天在線 各位學(xué)弟學(xué)妹聯(lián)系我 . 本店購設(shè)計的優(yōu)點 : 1 價格合理便宜 2 提供技術(shù)支持 3 售后服務(wù)好 4 成交速 度快當(dāng)時就可以完成調(diào)試功能 5 東西齊全 (開題論文代碼程序答辯 PPT售后服務(wù) ) 6 作品都是獲得優(yōu)秀的產(chǎn)品 (保證質(zhì)量 ) 第 25 頁 共 25 頁 致 謝 本文是在 何林波 老師的熱情關(guān)心和指導(dǎo)下完成的,他淵博的知識和嚴(yán)謹(jǐn)?shù)闹螌W(xué)作風(fēng)使我受益匪淺,對順利完成本課題起到了極大的作用。在此向他表示我最衷心的感謝! 在論文完成過程中,本人還得到了 李飛 老師和 03 信息安全 4 班 同學(xué)的熱心幫助,本人向他們表示深深的謝意! 最后向在百忙之中評審本文的各位專家 、 老師表示 衷心的感謝!
點擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1