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

正文內(nèi)容

計算機畢業(yè)設(shè)計外文翻譯--現(xiàn)代并發(fā)抽象c#-wenkub

2023-05-18 17:12:52 本頁面
 

【正文】 section describes the syntax and semantics of the new constr ucts in Poly phonic C and then gives a more precise, though still informal, speci?cation of the syntax. The Basic Idea To C ?s fairly conventional object oriented programming model, Polyphonic C adds just two new concepts: asynchronous methods and chords. Asynchronous Methods. Conventional methods are synchronous, in the sense that the caller makes no progress until the callee pletes. In Polyphonic C , if a method is declared asynchronous then any call to it is guaranteed to plete essentially immediately. Asynchronous methods never return a result (or throw an exception)。 Agha et al. 1993。 Gosling et al. 1996。 } 11 } ... 在到 通話( I, J)將阻止,直到 /除非服務(wù)已回答 x 上調(diào)用各自的回調(diào)。 (args*0+, x . ?rstcb)。 j = snd。 secondcb = new IntCallback(second)。 // send the result back } } 一種常見的客戶端模式,然后涉及到幾個并發(fā)的異步請求后阻塞直到所有已完成。 async idleExclusive() {} 合并異步消息 消息傳遞通常會由服務(wù)器的外部接口,使用異步方法,每個參數(shù)都需要參數(shù)的請求和發(fā)送請求已經(jīng)服務(wù)的最終結(jié)果或通知的地方。 } public void Exclusive() amp。我們進一步完善這個代碼來實現(xiàn)一個特定的公平當(dāng)有掛起的編寫者,至少 讀者和編寫者之間:一位編寫者,將獲得目前所有的讀者釋放它的鎖。 async idle() {} public void ReleaseExclusive() { idle()。 } public void ReleaseShared() amp。 s()。盡管如此,相反,我們可以編寫以下等效的代碼: class ReaderWriterPrivate { } ReaderWriter() { idle()。 async idle() {} public void ReleaseExclusive() { idle()。 } public void ReleaseShared() amp。} public void Shared() amp。沒有其他共享訪問塊的請求,直到客戶端具有獨占訪問,同時請求,直到?jīng)]有獨占訪問塊其他客戶端有任何訪問。觀察到的構(gòu)造 建立,每在類 OneCell 身體保留,簡單,易于驗證不變: 總是有一個掛起的異步方法調(diào)用:無論是 empty(),或 contains(o)。如果我們獲得()單元格的內(nèi)容,然后包含一個空的對象,返回值是 o。當(dāng)一個細胞被創(chuàng)建,它是最初是空的( )。 private async contains(object o) { empty()。一個調(diào)用獲取塊,直到單元格是滿的,然后刪除,并返回其內(nèi)容: public class OneCell { public OneCell() { empty()。復(fù)調(diào) c的編程 在介紹語言,我們現(xiàn)在怎么可能被用來解決并發(fā)編程問題的范圍。 打字問題 我們把 async 作為一個無效的亞型,并允許異步協(xié)變返回類型,只是在這兩個類型(偽)的情況下。 } private async af (int i, Thunk t) amp。 async reply(int j ) {return j 。然而,也必須決定在封鎖線程機構(gòu)應(yīng)運行,這樣的選擇一般觀察。例如,以下的實例類: class RendezVous { public int f (int i) amp。像往常一樣,然后創(chuàng)建對象可以實例化類,同步模式是不可擴展的。 制定重寫規(guī)則更加復(fù)雜和寬容是有可能的。如果上面的代碼是合法的,那么代碼編寫的期望,使匹配的 C 類的實例 F()和 g()的調(diào)用將無法工作時,通過 D 所有的實例 g()的調(diào)用會導(dǎo)致 body3 運行,所有的調(diào)用 f()的僵局。如果認為執(zhí)行一個給定的方法包括所有同步和機構(gòu),它出現(xiàn)的所有的復(fù)調(diào),那么,我們繼承的限制似乎不是沒有道理的,因為在(非法)代碼,如 class C { 7 virtual void f () amp。 條件 9 提供了一個保守的,但簡單,完整 性檢查時,煉油類包含復(fù)調(diào)以來,在一般情況下,實現(xiàn)繼承和并發(fā)不拌勻 [松岡和米澤 1993](見富爾等。 在一個特定的類: ( 7)具有相同的成員名稱和參數(shù)類型的所有方法頭簽名必須具有相同的屬性的返回類型和相同的套和修飾符。 ( 3)如果弦有一個返回類型的類型的方法頭,然后身體可能使用返回類型的表達式的語句,否則身體可能使用空的 return 語句。 methodheader]? body methodheader : := 屬性修飾符返回類型成員名(形參)。 3。 public async Put(int n) { return ()。這也是(普通)有涉及給定方法的多復(fù)調(diào)。更確切地說,決定是否任何復(fù)調(diào)呼叫啟用,如果是這樣,從隊列中刪除其他懸而未決的呼叫和調(diào)度為執(zhí)行機構(gòu),是一個原子操作。如果有這種方法,然后身體在與調(diào)用線程運行這一號召的方法,并返回值。 也是不確定的(印刷或者“藍天”或“天藍”)。 到底哪的電話匹配是不確定的,所以即使是單線程程序如: Buffer buff = new Buffer()。然后有兩種可能性: 如果有以前的未匹配過的的通話 buff . Put(s) (for some string s),那么現(xiàn)在有一個比賽,所以離隊待沽 Put(s)和復(fù)調(diào)的身體運行,返回到呼叫者的 buff . Get()方法。 } } 上面的代碼定義了兩個實例方法的類的緩沖區(qū),這是共同定義在一個單一的復(fù)調(diào)。頭是一套方法聲明由“&”分隔。然而,這樣的定義,實際上是相當(dāng)難得的 C#復(fù)調(diào)。異步方法永遠不會返回結(jié)果(或拋出異常) 。 基本思路 到 C#的相當(dāng)傳統(tǒng)的面向?qū)ο缶幊棠P?,?fù)調(diào) C#增加了兩個新概念:異步方法和復(fù)調(diào)。且不說從原語,更多的或較少的基礎(chǔ)設(shè)施,在烤“讓人眼花繚亂,有一臺機器上(共享內(nèi)存,線程,同步的基礎(chǔ)上的東西是 20世紀 70 年代的并發(fā)模型之間的不匹配相互排斥)和異步,基于消息的風(fēng)格,使用編程基于網(wǎng)絡(luò)的應(yīng)用和服務(wù)。 C#語言,包括一個 lock 語句,執(zhí)行的過程中獲得一個給定的對象相關(guān)聯(lián)的互斥阻塞。在與音樂的精神調(diào)諧的 C#和并發(fā)活動的“協(xié)調(diào)流程”,我們稱這種語言復(fù)調(diào) C#。編譯器可狀態(tài)機轉(zhuǎn)換成并發(fā)的一些模式,優(yōu)化使用隊列,使用輕量級的線程,在可能的情況下,避免分叉線程沒有必要的,并使用線程池。在廣域網(wǎng)的水平,例如,在協(xié)作應(yīng)用,分布式的工作流, Web 服務(wù),我們現(xiàn)在遇到類似的問題,因為全球通信的異步性質(zhì)和潛伏期和復(fù)雜性。 異步編程 異步的事件和消息傳遞越來越多地用于在各級軟件系統(tǒng)。 最近在富爾和 Gonthier 的 [1996, 2020]加入演算中顯現(xiàn)了一個有趣的新的語言方法,進程演算非常適合在分布式的環(huán)境中直接執(zhí)行。 Agha et 。值得關(guān)注的是沒有那么多的有效的實施和使用鎖在一個單一的處理器或者多重處理器,但沒有不必要的異步事件的處理能力阻止長期客戶,并沒有死鎖。在 70 年代開始在這個方向作了很多嘗試,顯示器 [霍爾 1974年 ]的概念和奧卡姆語言 [INMOS有限公司 1984](基于通信順序進程 [霍爾 1985])。此外,程序員可以更可靠說明自己的意圖,通過一個清晰的語法和其他工具比編輯者可以更容易地確定程序員的意圖。然而,即使當(dāng)并發(fā)庫被正 確指定,但由于他們是庫,而不是語言的特點這個事實,還是會有不良的后果。斯林等。并發(fā)可以顯著影響一個結(jié)構(gòu)中的語言的含義(開始轉(zhuǎn)讓的原子),并能影響調(diào)用庫的能力。 1 南京郵電大學(xué) 畢業(yè)設(shè)計 (論文 )外文資料翻譯 學(xué) 院 傳媒與藝術(shù)學(xué)院 專 業(yè) 數(shù)字媒體技術(shù) 學(xué)生姓名 黃超 班級學(xué)號 B080705 B08070525 外文出處 ACM Transactions on Programming Languages and Systems, Vol. 26, No. 5, September 2020 附件: ; 2 指導(dǎo)教師評價: 1.翻譯內(nèi)容與課題的結(jié)合度: □ 優(yōu) □ 良 □ 中 □ 差 2.翻譯內(nèi)容的準確、流暢: □ 優(yōu) □ 良 □ 中 □ 差 3.專業(yè)詞匯翻譯的準確性: □ 優(yōu) □ 良 □ 中 □ 差 4.翻譯字符數(shù)是否符合規(guī)定要求: □ 符合 □ 不符合 指導(dǎo)教師簽名: 年 月 日 3 附件 1:外文資料翻譯譯文 現(xiàn)代并發(fā)抽象 C# 尼克盡管這樣,最流行的編程語言對待并發(fā)語言不是作為一種語言功能的并發(fā)性,而往往是作為一個收集的,根據(jù)指定的外部庫。 1996 年 Detlefs 等。 在原則上,可以提供許多功能,無論是作為語言特性或作為庫:典型的例子是,內(nèi)存管理和異常。特定領(lǐng)域的語言 [Ramming 1997。監(jiān)控器的一般概念已經(jīng)變得非常流行,特別是在其目前的面向?qū)ο蟮男问骄€程和對象綁定互斥,但它已提供作為一個語法的外殼模板,最可選鎖定對象上的方法調(diào)用。換句話說,重心正在從共享內(nèi)存并發(fā)轉(zhuǎn)向消息或事件并發(fā)性。 Reppy 1992。其他語言,如 JoCaml [Conchon and Le Fessant 1999]和 Funnel [Odersky 4 2020],結(jié)合了類似功能編程模型的想法。在最低水平,設(shè)備驅(qū)動程序必須對異步設(shè)備事件迅速作出反應(yīng),而資源利用上的吝嗇。 在所有這些領(lǐng)域,我們自然會發(fā)現(xiàn)有很多要處理的同時異步消息的情況下,多線程用來處理它們。這一切都是真的有可能只有一個擁有上譜“,可以發(fā)生的事情”:這個手柄可以處理由并發(fā)操作,既可以隱藏,從而使多個語法實現(xiàn)技術(shù)。 C 和 .NET C#是一個現(xiàn)代,類型安全,面向?qū)ο缶幊陶Z言,最近微軟推出的 Visual ][ECMA 的一部分。此外, .NET 庫實現(xiàn)了許多傳統(tǒng)的并發(fā)控制原語,如信號量,互斥和讀 /寫鎖,以及異步編程模型的基礎(chǔ)上代表。因此, C#中似乎是一個為主流的并發(fā)語 言支持我們的想法,理想的測試床語言。 異步方法。他們使用 async 關(guān)鍵字,而不是宣布無效。更常見的異步方法是使用如下所述的復(fù)調(diào),定義,不一定需要新的線程。身體 只執(zhí)行一次所有的方法,在頭被稱為方法調(diào)用隱含排隊等候,直到 /除非是有現(xiàn)代并發(fā)抽象為 C#匹配的復(fù)調(diào)。 string Get()方法是一個同步的方法不接受參數(shù)并返回一個字符串。 如果是以前匹配過的來電 buff . Put(.),然后調(diào)用 BUFF. get()方法阻塞,直到另一個線程提供了一個匹配的 put()。 buff . Put(“blue”)。 請注意,執(zhí)行緩沖不涉及產(chǎn)生任何主題:復(fù)調(diào)本身在運行時,它在一個已經(jīng)存在的線程(即一個名為 Get())。只是,如果沒有這樣的方法(即在弦的所有方法都是異步)運行在一個新的線程,在這種情況下,有沒有要返 回的值。除了這個原子性的保證,然而,有沒有監(jiān)視器像復(fù)調(diào)機構(gòu)之間的相互排斥的。例如: public class Buffer { public string Get() amp。 } 6 } 現(xiàn)在我們已經(jīng)定義為數(shù)據(jù)緩沖區(qū)的方法之一,但有兩個把它的方法(其中發(fā)生類型,而不是要區(qū)分比名)。非正式規(guī)范 語 法 到 C 語法的語法擴展 [ECMA 2020, Appendix C]是非常次要的。 我們呼吁復(fù)調(diào)聲明微不足道 的,如果它宣布一個單一的,同步的方法(即它是一個標準的 C 方法聲明)。 ( 4)在方法頭中出現(xiàn)的所有形參必須有鮮明的標識。 ( 8)如果它是一個值類(結(jié)構(gòu)),那么只有靜態(tài)方法可能會出現(xiàn)在不平凡的復(fù)調(diào)。 [2020]連接的情況下討論了“繼承異?!蔽⒎e分)。 virtual async g () { /? body1 ?/ } virtual void f () amp。請注意,在繼承的限制手段,如聲明 virtual void f () amp。我們的目 前的規(guī)則有簡
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1