新車新規定,台、日分別推出電動車輛相關新法規

電動車輛日益興盛,意味著相關的交通法規也需進行修訂。日本與台灣近日分別針對電動車與電動機車、自行車提出新的法令規章,主要的目的是保護用路人安全。

日本:電動車需有警示音

日本國土交通省於2月1日宣布新法規,要求電動車、混和動力汽車、燃料電池車等行駛聲音較小的電動車輛在生產階段就需安裝車輛接近告知裝置,以避免行人沒有注意到車輛靠近而造成交通事故。告知裝置的音量將採用聯合國即將於三月公布的標準。2018年上路的汽車就須加裝相關設備。

為強化新法規的強制性,日本也將修改道路運輸安全標準,未符合告知裝置音量標準的車輛,將無法在日本國內出售。

台灣:電動自行車需配戴安全帽

而向來以機車與自行車為電動車輛主流的台灣,也針對愈來愈普及的電動自行車提出新規定。交通部指出,未來電動自行車騎士比照電動機車與一般機車,必須配戴合格安全帽;未配合規定者將課處新台幣300~600元的罰金。今年7月1日起開始勸導,預計最快在明年正式開罰。

目前台灣有18萬輛領牌的電動自行車,車速規定限於25km/hr以下,但經調整後時速往往可來到30~40km/hr,危險性增加。加上電動自行車不受一般機車與電動機車法規限制,且不須駕照就能騎乘,交通部認為有管制漏洞,已著手修正道路交通安全規則,並預計在7月1日起勸導電動自行車騎士佩戴安全帽。

此外,交通部也將針對改車問題修正「電動輔助自行車及電動自行車形式安全審驗管理辦法」,明文規定禁止改變速率控制器,將速度限制在25km/hr以內。同時,電動自行車之車款外裝、功能、尺寸等,也將制定標準並發給合格標章,供合格車款張貼;7月1日起,未貼合格標章的電動自行車不可上路,舊車則將鼓勵申請更換新標章。

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

南投搬家前需注意的眉眉角角,別等搬了再說!

大眾宣佈要大力研發扁平電池 用於未來電動汽車

據報導,大眾宣佈要努力研發扁平電池,並將其應用到大眾未來的電動汽車中。

大眾CEO赫伯特•迪斯(HerbertDiess)確認,扁平電池即將研發成功,這將是該公司在為綠色未來奮鬥中所取得的巨大突破。在未來幾年,大眾將推出更多對環境影響較小的車輛,專注高效汽車,努力擺脫“柴油排放門”的影響。

之前的“柴油門”迫使大眾加強了對汽車電氣化的研發力度,這也是其準備應用扁平電池的原因。赫伯特•迪斯還說,大眾正在建立名為“新大眾”的新型商業部門,集汽車數位化開發和相有關機動服務於一體,而且大眾需要在軟體發展和電池生產方面投資更多。

同時,大眾旗下的奧迪也宣佈擬於2018年推出一款純電動跨界車,是e-tron quattro概念車的升級版,名字可能為“Q6”。大眾還將在2020年前推出新一代輝騰電動車。

本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

重返英國有望 河狸不只會築壩治水 還能抗污染、救動物

環境資訊中心綜合外電;姜唯 編譯;林大利 審校

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※帶您來了解什麼是 USB CONNECTOR  ?

※自行創業 缺乏曝光? 下一步”網站設計“幫您第一時間規劃公司的門面形象

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※試算大陸海運運費!

巴基斯坦洩漏不明氣體 至少14死逾600人不適

摘錄自2020年2月19日星島日報報導

巴基斯坦南部信德省卡拉奇洩漏不明氣體,至少14人死亡,約650人不適。

事發在本月16日晚上,卡拉奇洩漏不明氣體,導致數百人身體不適,湧入醫院求診。有市民表示,當晚看到空氣中瀰漫着煙霧,吸入後立即無法呼吸和想嘔吐,有人就出現心跳加速、胸口痛、眼睛痕癢等癥狀。而事故發生後,不少人都帶上口罩,希望避免吸入氣體,有人吸入洩漏氣體後不久就死亡。

當局表示,目前仍無法判斷氣體的種類和洩漏來源,初步無人為破壞跡象,目前將居民暫時撤離至安全地點。巴基斯坦軍方也派出化學兵前往當地進行進一步探測。

另外,該區周二有數百人上街集會以示不滿,要求當局盡快查明氣體來源。

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※為什麼 USB CONNECTOR 是電子產業重要的元件?

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想要讓你的商品成為最夯、最多人討論的話題?網頁設計公司讓你強力曝光

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

※專營大陸快遞台灣服務

台灣快遞大陸的貨運公司有哪些呢?

非洲南部乾旱嚴重 農民欠收動物死亡

摘錄自2020年2月20日公視報導

近幾年非洲南部遭遇嚴重的乾旱,降雨量每況愈下,雨季也一年比一年短,導致農民無法收成。連當地的動物都因為沒有水可以喝,數量減少一大半。有專家認為,這種情況可能將成為常態。

在過去的五年間,非洲南部平均氣溫上升的速度是全球的兩倍,從南非、辛巴威到尚比亞,到處都在缺水。雨季一年比一年短,受害最深的就是靠天吃飯的農夫。

尚比亞的一個村莊收成僅剩往年3成,農民欲哭無淚。而在南非,有農夫失去6成的牲畜,綿羊生產後沒有羊奶可餵養孩子,農夫只能忍痛拋棄剛出生的小羊。

另一方面,高度仰賴野生動物生態的觀光業,也因為動物大量死亡而遭受衝擊。位於南非的生態觀光地點——格魯伯斯普,已經有大量的水牛、河馬和條紋羚消失。原本這個地區的年降雨量平均250毫米,但是現在要五年才有這個數量。

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

USB CONNECTOR掌控什麼技術要點? 帶您認識其相關發展及效能

※評比前十大台北網頁設計台北網站設計公司知名案例作品心得分享

※智慧手機時代的來臨,RWD網頁設計已成為網頁設計推薦首選

台灣海運大陸貨務運送流程

兩岸物流進出口一站式服務

產品標示碳足跡、限制肉類消費好不好? 英辦氣候公民大會徵詢民眾意見

環境資訊中心綜合外電;姜唯 編譯;林大利 審校

本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包”嚨底家”

網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

※想知道購買電動車哪裡補助最多?台中電動車補助資訊懶人包彙整

小三通海運與一般國際貿易有何不同?

小三通快遞通關作業有哪些?

Google在Nature上發表的關於量子計算的最新進展的論文(Quantum supremacy using a programmable superconducting processor 譯)— 附論文

Google 的研究人員於2019年10月23號發表在Nature自然》《科學《細胞》雜誌都是國際頂級期刊,貌似在上面發文3篇左右,就可以評院士了)上,關於量子計算方面(基於 Sycamore芯片)的具有里程碑式進展的論文,受到國內外同行及媒體的廣泛關注,包括中科大量子科學家 — 潘建偉及其團隊。特朗普的女兒Ivanka Trump(左一)也發twitter表示祝賀,如下圖:

Even as Ivanka praised the parties involved in this new quantum computing achievement, a number of social media users appeared critical of her assessment of the Trump administration’s role in this endeavour.

IBM表示不服,Google不care。下面讓我們逐字逐句來看他們的論文吧,對於爭論的事情,自己下功夫搞清楚。

 

Quantum supremacy using a programmable superconducting processor

基於可編程的超導處理器實現的量子霸權 

 相關資源:https://doi.org/10.1038/s41586-019-1666-5

 接收日期:2019年7月20日

 核准日期:2019年9月20日

 在線發布:2019年10月23日

 

Abstract

引言

量子計算機吹牛逼說,對於特定的計算任務,基於量子處理器的計算機,其速度相較於經典處理器呈指數級增長。根本的挑戰在於構建一個能夠在海量的計算空間上運行量子算法的高保真處理器。我們的報告是關於,一個基於53量子比特實現的可編程的超導量子芯片,在253(約1016)的計算狀態空間創建了一個量子態的故事。

我們用經典模擬驗證了重複實驗測量結果的採樣概率分佈。我們的Sycamore處理器採樣一個量子電路100萬次,大約花了200秒——我們的基準測試表明,同樣的任務最先進的超級計算機大約需要花費10000年。相較於所有已知的經典算法,對於這個特定的計算任務,用實驗實現的量子優越性在速度方面的顯著提升,預示着一個期待已久的計算範式。

 

Main

正文

早在20世紀80年代,有鑒於經典計算機在模擬大型量子系統時的高昂成本,理查德·費曼(Richard Feynman)就提出量子計算機將是解決物理、化學問題的有效工具。將費曼的設想付諸實現,構成了重大的實驗和理論挑戰。

首先,一個能夠在足夠巨大的計算空間(hibert)進行計算並且以低錯誤率提供量子加速的量子系統,工程上是否可行?其次,我們能否構建一個對於經典計算機很難但是對於量子計算機比較簡單的問題?通過在我們的超導量子處理器上運算這樣的一個基準任務,我們解決了這2個問題。我們的實驗實現了量子優越性,這是全面實現量子計算征程的里程碑。

在實現里程碑的過程中,我們證明了量子加速在現實世界是可達到的,也沒有被任何未知的物理定律所排除。量子優越性也預示着嘈雜的中型量子(NISQ,筆者:嘈雜意味着不穩定,噪音嚴重)技術時代的到來。我們論證的基準任務,已經立即用於生成可認證的隨機數(S. Aaronson,手稿正則準備中);這個新的計算能力的最初應用領域可能包括優化機器學習、材料科學和化學。然而,實現完全意義的量子計算(例如,Shor的分解算法)仍有待於技術的飛越以製造支持容錯邏輯的量子比特。

為了達成量子優越性,我們取得了一系列的技術進步,從而為糾錯鋪平了道路。我們研製了可以同時執行跨兩個維度量子矩陣的快速高保真門。我們使用了強大的新工具:交叉熵基準,在組件和系統層面對處理器進行了校準和基準測試。最後,為了精確預測整個系統的性能,我們使用了組件級的保真度,從而進一步證明當擴展到大型系統時量子信息的行為符合預期。

 

A suitable computational task

合適的計算任務

為了證明量子優越性,我們在採樣量子電路的偽隨機輸出任務中,比較我們的量子處理器和最新的經典計算機。隨機電路是基準測試的一個合適選擇,因為它門不具有結構,因此可以有限地保證計算硬度。我們設計的電路通過重複應用單量子和雙量子邏輯運算實現了一組量子的糾纏。採樣量子電路的輸出生成了一串比特串,例如{0000101, 1011100, …}。由於量子干擾的存在,比特串的概率分佈類似於在激光散射中的光干擾產生的強模型的斑點,因此有些比特串比其它的更容易出現。隨着量子比特的數量(寬度)和門循環數量(深度)的增加,概率分佈之經典計算的難度呈指數級增加。

我們使用稱為交叉熵基準測試的方法來驗證量子處理器是否正常工作,該方法將通過比較實驗觀察的每個比特串的頻率與通過經典計算機的模擬計算得出對應的理想概率。對於給定的電路,我們收集測得的比特串{xi}並且計算線性交叉熵基準的保真度(另請參見),這是我們測得的比特串的模擬概率的平均值:

FXEBY= 2n<P(xi)>i  ‐ 1

其中n是量子比特的總數,P(xi) 是為理想的量子電路計算的位串 xi 的概率,並且平均值超過了觀察到的比特串。直觀地講,FXEB和我們採樣高概率的比特串的頻率相關。當量子電路沒有錯誤的時候,其概率分佈呈指數分佈 (請參見),從這個分佈採樣將使得FXEB = 1。另一方面,從均勻分佈採樣將得到:P(xi)i = 1/2,FXEB  = 1。FXEB的值介於0和1之間,表示電路運行時沒有錯誤發生的概率。概率(P(xi) )必須從經典模擬量子電路得到,因此在至高無上的量子優越性上面計算FXEB十分棘手。然而,通過某些簡化的電路,我們可以估計出在寬和深量子電路上滿載運行的處理器的定量保真度。

 我們的目標是通過足夠寬和深的電路實現足夠高的FXEB,這樣經典計算的成本將高的難以承受。這是一個艱巨的任務,因為我們的邏輯門並不完美,我們打算構造的量子態對錯誤也很敏感。在算法運行過程中,單個比特或相位的翻轉將徹底重構斑點圖案並且導致保真度逼近0(請參見)。因此,為了宣稱量子的優越性,我們需要一個能夠以非常低的錯誤率運行程序的量子處理器。

 

Building a high-fidelity processor

構建高保真處理器

我們設計了一個名為“Sycamore”的量子處理器,它由54個特蘭蒙量子比特的二維陣列組成,其中每個量子位可調耦合到一個矩形格子的四個最近的相鄰接點。選擇這個連接是為了與使用表層代碼的糾錯向前兼容。這個設備的一項關鍵性系統進步是它實現了單量子比特和雙量子比特運算的高保真度,不單單是孤立的,而且可以在許多量子比特上同時進行門運算和現實計算。我們接下來討論重點,也請參見。

在一個超導量子比特里,傳導电子會凝聚成宏觀量子態,這樣電流和電壓會机械地呈現出量子態。我們的處理器使用特蘭蒙量子比特,可以將其視為擁有5-7 G赫茲主頻的非線性超導諧振器。其量子比特被編碼為諧振電路的兩個最低量子本徵態。每個特蘭蒙都有兩個控制器:一個微波驅動器來激發量子比特,以及一個磁通量控制器來調製頻率。每個量子比特被連接到用於讀出量子比特狀態的線性諧振器。如圖1所示,每個量子比特同時通過一個新的可調耦合器連接到其相鄰的量子比特。我們的耦合器設計允許我們快速將量子比特—量子比特耦合從完全關停調整到40 M赫茲。1個量子比特無法正常運轉,所以這個設備用了53個量子比特和86個耦合器。

           圖.1 : Sycamore 處理器

為了金屬化和約瑟夫森連接,處理器用鋁製造,並使用銦製造兩個硅晶片之間的凸點。芯片用引線粘合到超導電路板上,並在稀釋冰箱中冷卻至20 mK以下,以將環境熱能降低到大大低於量子比特能。處理器通過濾波器和衰減器連接到處於室溫的电子設備,該設備可合成控制信號。使用頻率復用技術可以同時讀取所有量子比特的狀態。我們用兩級低溫放大器來增強信號,該信號被数字化(在1 G赫茲頻率時為8比特)並在室溫下通過数字化實現解復用。為了完全控制量子處理器,我們總共設計了277個數模轉換器(在1G赫茲頻率時為14比特)

 我們通過驅動25納秒的微波脈衝來執行單量子比特門,該微波脈衝會以量子頻率共振,同時關閉量子比特-量子比特耦合。脈衝經過整形,從而最大程度地避免了過渡到更高的特蘭蒙狀態。由於兩級系統缺陷,門的性能會隨頻率產生很大的變化,雜散微波模式會與控制線和讀出諧振器相耦合,量殘餘的雜散耦合於量子比特、磁通噪聲和脈衝失真。有鑒於此,我們優化了單量子比特操作頻率以減免這些錯誤機制。

我們使用上述交叉熵基準測試協議對單量子比特門的性能進行基準測試,降低到單量子比特級別(n = 1),以測量在單量子比特門期間發生錯誤的概率。在每個量子比特上,我們應用數量可變的m個隨機選擇的門,並在許多序列上測量FXEB的平均值;隨着m的增加,誤差會累積、FXEB的平均值會下降。我們用[1 − e1 /(1 − 1 / D2)] m對該衰減建模,其中e1是Pauli誤差概率。在這種情況下,狀態(希爾伯特)的空間量綱,D = 2n,等於2,它校正了誤差與理想態部分重疊的去極化模型。該過程類似於更典型的隨機基準測試,但支持非Clifford門的集合,並且可以將消退相干誤差與相干控制誤差區分開。然後,我們重複了所有量子比特同時執行單量子比特門的實驗(圖2),而錯誤率僅僅表現出微小的增長,表明我們設備的微波干擾率很低。

         圖.2 : 全系統的 Pauli 和 測量錯誤

我們通過持續打開20 M赫茲耦合12 納秒,並使相鄰的量子位共振來執行類似iSWAP的兩個量子比特糾纏門,從而允許量子比特可以交換激勵。在此期間,量子比特還經歷了受控相位(CZ)的交互作用,該交互作用來自於更高級別的特蘭蒙。優化每對量子比特的兩個量子比特門限頻率軌跡,是為了減少在優化單量子比特工作頻率時所要考慮的相同錯誤機制。

為了表徵和量化兩個量子比特門,我們運行了m個周期的兩個量子比特電路,每個周期在每個雙量子比特上都包含一個隨機選擇的單量子比特門,緊跟着固定的兩個量子比特門。通過使用FXEB作為成本函數,我們學習了兩個量子單位的參數(例如iSWAP和CZ交互的數量)。經過這次優化,我們從值為 m 的FXEB的衰變中提取每周期錯誤e2c,並減去兩個單量子比特的錯誤e1來分離出兩個量子比特錯誤e2。我們發現e2的平均值為0.36%。 另外,我們在為整個矩陣同步運行雙量子比特電路的同時重複執行相同的過程。在為諸如,色散漂移和串擾等,考慮影響而更新單一參數后,我們發現e2的平均值為0.62%。

對於整個實驗,我們在同步操作期間用兩個量子比特元測量每一對,而不是所有對的標準門,生成量子電路。典型的兩個量子比特門是一個全iSWAP,並且擁有1/6的全CZ。絕不使用單獨校準的門來限制演示的通用性。例如,1個量子比特門和任意給定對中的兩個唯一的量子比特門可以組成可控NOT(CNOT)門。高保真“教科書似的門”,例如CZ或iSWAP ,的製作正在緊鑼密鼓地進行。

最後,我們通過使用標準色散測量對量子比特讀數進行了基準測試。在0和1狀態下的平均測量誤差如圖2a所示。
我們還通過讓每個量子比特隨機的處於0或1的狀態,然後測量所有量子比特以獲得正確結果的概率,來測量同時運行所有量子比特時的錯誤。我們發現,同時讀出僅僅會導致每個量子比特測量誤差的適度增加。

找到了單個門的錯誤率和讀數后,我們可以將量子電路的保真度建模為所有門和測量的0錯誤操作概率的乘積。我們最大的隨機量子電路有53個量子比特,1113個單量子比特門,430個雙量子比特門,每個量子比特一個亮度,我們估計其總保真度為0.2%。由於FXEB的不確定度為1 /Ns-√1/ Ns(其中Ns是樣本數),因此這個保真度應該可以通過數百萬次的測量來分辨。我們的模型推測,糾纏越來越大的系統不會引入超出我們在單比特和兩比特級別上測量的誤差之外的其他錯誤源。 在下一節中,我們將了解該假設的成立情況。

 

Fidelity estimation in the supremacy regime

優越性的逼真度估算

我們的偽隨機量子電路生成器的門序列如 圖3 所示。此算法的一個周期由應用於所有量子的單量子(從{√X, √Y, √Z}隨機選擇),緊跟着的成對的量子比特上的兩個量子比特門組成。組成“優越性電路”的門序列旨在最小化為創造一個高糾纏態的電路深度,而這正是計算複雜度和經典硬度所需。

                   圖.3 : 量子優越性電路的控制操作

儘管我們無法在至高無上的體系中計算FXEB,但是我們可以通過降低電路的複雜度的三個變體來評估它。在“貼片電路”中,我們移除掉了兩個量子比特門的一部分(佔兩個量子比特門總數的一小部分),將電路分割成兩個空間上隔離的,沒有相互作用的量子比特補丁。然後我們用可以輕鬆計算出保真度的補丁的乘積作為總的保真度。在“消除電路”中,我們沿切片僅去除了最初的兩個量子比特門的一小部分,允許補丁之間的糾纏,這在維持了仿真可行性的同時更緊密地模擬了整個實驗。最終,我們也可以運行同我們的優越性電路有着相同門數的全“驗證電路”,但卻與在傳統上容易模擬的多的兩电子門序列有着不同的模式(也請參見)。比較這些三個變體讓我們能夠在接近優越性制度的過程中追蹤系統保真度。

我們首先檢查補丁版本和刪節版本的驗證電路是否能與多達53量子比特的完整驗證電路產生相同的保真度,如圖4所示。每個數據點,我們通常在10個電路實例中採集 Ns = 5 × 106的總樣本,每個實例的區別僅在於在每個周期中單個量子門的選擇不同。我們也显示FXEB的預測值該值是通過將單量子和雙量子比特門的0錯誤率和測量值相乘而得到的(也請參見)儘管在計算複雜度和糾纏存在巨大差異,這個預測值、補丁及消除的保真度都對應的全電路的保真度吻合的很好。這讓我們對消隱電路可以用於準確估計更為複雜電路的保真度充滿信心。

                圖.4 : 量子優越性的證明

保真度仍可以直接被驗證的最大電路有53個量子比特和一個簡化處理過的門電路。100萬個內核以0.8%的保真度對這些隨機電路進行採樣需要花費130秒,相較於單核,量子處理器有百萬倍的加速。

我們現在繼續對計算最複雜電路進行基準測試,這個只是2個比特門的重排列。在圖4中,我們显示了通過不斷增加深度,針對53量子比特的全優越性電路的補丁版和消隱版本測得的FXEB。對於有53個量子比特和20個周期的最大電路,我們在10個電路實例上搜集了 Ns = 30 × 106

樣本,對於消隱電路得到的FXEB = (2.24±0.21)×10−3。基於5σ的置信度,我們斷定在量子處理器上運行這些電路的平均保真度至少大於0.1%。我們預期 圖4b的全部數據應具有近似的保真度,但是由於仿真時間(紅色数字)需要很長時間才能檢查,我們將數據歸檔(參見“數據可用性”部分)。這部分數據因此處於量子至上的狀態。

 

The classical computational cost

經典計算的成本

我們在經典計算機的實驗中模擬量子電路有2個目的:(1))通過使用可能簡化的電路計算FXEB來驗證我們的量子處理器和基準測試方法(圖4a),(2)估算FXEB以及對最困難的電路進行採樣的經典成本(圖4b)。對多達43個量子比特,我們使用Schrödinger算法,該算法模擬了完整量子態的演化;在Jülich超級計算機(100,000核、250 TB)運行了最大的樣例。超過此大小,則沒有足夠的隨機存取存儲器(RAM)來存儲量子的狀態了。對於更多的量子比特,我們使用運行在Google數據中心的混合Schrödinger-Feynman算法來計算單個比特串的幅度。在使用類似費曼路徑積分的方法連接它們之前,該算法將電路拆分為兩個量子比特補丁,並使用Schrödinger方法有效地模擬每個補丁。儘管具有更高的內存效率,但隨着路徑深度與連接補丁的門的數量呈指數增長,隨着電路深度的增加,Schrödinger-Feynman算法的計算量也呈指數增長。

為了估算優越性電路的經典計算成本(圖4中的灰色数字),我們在Summit超級計算機以及Google集群上都運行了部分量子電路的仿真,從而推斷出其全部成本。在此推斷中,我們通過擴展FXEB的驗證成本來認定採樣的計算成本,例如,一個0.1%減少了約1000的花費。在當今世界上功能最強大的Summit超級計算機上,我們使用了一個受費曼路徑積分啟發的方法,該方法在低深度下效率最高。當m = 20時,張量無法合理地放入節點內存中,因此我們只能在m=14時測量運行時間,因此我們估計以1%的保真度採樣300萬個比特串將需要一年。

在谷歌雲服務器上,我們預估使用Schrödinger-Feynman算法以0.1%的保真度在m = 20時運行相同的任務將耗費50萬億個核/小時,並消耗1皮瓦時的能量。從這個角度來看,對量子處理器上的電路採樣三百萬次需要600秒,而採樣時間受控制硬件通信的限制;實際上,量子處理的凈量子處理器的凈時間僅為30秒左右。所有電路的比特串樣本都已在線存檔(請參見“數據可用性”部分),以激勵開發和測試更高級的驗證算法。

有人可能會懷疑算法創新可以在多大程度上增強經典模擬的效果。我們的假設基於複雜理論的認知,即算法任務的成本是電路大小的指數。的確,在過去的幾年中,模擬算法已經得到了穩步的提升。我們預計最終將實現比報告里提到的更低的仿真成本,但是我們也期望更大型的量子處理器在硬件方面的改進將持續超越它們。

 

Verifying digital error model

驗證数字錯誤模型

基於量子錯誤校正理論的一個關鍵假設是—量子態錯誤可以考慮数字化和本地化。基於這樣的一個数字模型,演化量子態中的所有錯誤都可能通過散布在電路中的一組局部保利誤差(位翻轉或相位翻轉)來表徵。由於持續振幅是量子力學的基礎,所以需要測試量子系統中的錯誤是否可以被視為離散的和呈概率分佈的。我們實驗的觀察結果證明該模型對我們處理器確實是有效的。我們系統的保真度可以通過一個簡單的模型很好地預測,在該模型中,每個門各自的特徵保真度相乘起來(圖4)。

為了能成功被数字化錯誤模型描述,系統的相關雙指數級得很小才行。我們通過選擇隨機化和解相關錯誤的電路,優化控制以最大程度地減少系統錯誤和泄漏以及設計比相關噪聲源(如1 / f磁通噪聲)運行得更快的門,從而在我們的實驗中達成了這一點。通過在高達253的希爾伯特空間對預測性不相關的誤差模型的演示,可以表明我們可以構建一個系統,在該系統中量子資源(例如糾纏)不會過於脆弱。

 

The future

未來

基於超導量子比特的量子處理器現在可以處理,量綱為253 ≈ 9 ×1015的希爾伯特(Hilbert)空間的計算,超出了當今最快的經典超級計算機的上限。據我們所知,此次試驗標記了只能在量子處理器運行的第一個計算。量子處理器因此構建了量子優越性的制度。我們希望他們的計算能力將繼續以雙指數級的比率增長:模擬量子電路的經典成本隨着計算量的增加而呈指數級的增長,而硬件的提升將可能遵循量子處理器當量的摩爾定律,即每隔幾年此計算量就翻倍。為了支撐雙指數級的增長率並最終提供運算著名的,如Shor 或者Grover ,量子算法所需的計算量,量子誤差修正的工程學將成為關注的焦點。

Bernstein 和 Vazirani 闡述的擴展自Church–Turing的論文,斷言任何合理的模型都可以由圖靈機有效的模擬。

 

Data availability

數據可用性

用於本次研究形成和分析的數據庫可在我么公開的樹妖(Dryad)倉庫上獲得 (https://doi.org/10.5061/dryad.k6t1rj8)。

 

在線內容

 任何方法、額外參考、自然研究的報告摘要、源數據、擴展數據、補充信息、確認書、同行評審信息;作者貢獻和利益衝突的詳細信息; 以及數據和代碼可用性均可在 https://doi.org/10.1038/s41586-019-1666-5 得到

 

初次嘗試翻譯,錯誤之處必不在少,歡迎批評指正

附:

1)英文論文下載:  

2)

 

*****************************************************************************************************

精力有限,想法太多,專註做好一件事就行

  • 我只是一個程序猿。5年內把代碼寫好,技術博客字字推敲,堅持零拷貝和原創
  • 寫博客的意義在於鍛煉邏輯條理性,加深對知識的系統性理解,鍛煉文筆,如果恰好又對別人有點幫助,那真是一件令人開心的事

*****************************************************************************************************

 

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※帶您來了解什麼是 USB CONNECTOR  ?

※自行創業 缺乏曝光? 下一步”網站設計“幫您第一時間規劃公司的門面形象

※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!!

※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化

※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

※試算大陸海運運費!

VS2019打包WPF安裝程序最新教程

VS2019打包WPF安裝程序最新教程,使用Visual Studio 2019開發的WPF程序如果想要打包為安裝程序,除了在VS2019找到WPF項目類庫直接右鍵發布之外,更常用的還是將其打包為exe或者msi的安裝程序;打包成安裝程序的話,客戶得到安裝程序直接安裝即可使用,即使在離線環境情況下,安裝好就可以使用了。

一些傳統行業發布程序時,比較常用這種方法,如醫療,教育等。

演示程序打包一覽

在本教程中,我完整的打包了一個簡單的WPF程序,最終安裝好了以後,在桌面有一個我的程序的快捷方式圖標,點擊這個圖標即可打開應用程序。

WPF安裝程序桌面圖標  

程序運行后的效果如下所示:

VS2019打包WPF安裝程序運行效果 

VS2019打包WPF安裝程序步驟

使用VS2019打包WPF安裝程序有很多種方法,本篇教程基於VS擴展插件Microsoft Visual Studio Installer Projects工具來打包,實際上此工具,在VS2010時自帶有,只是後面版本的Visual Studio取消了此插件,現在需要單獨安裝。

安裝打包Installer插件

安裝Microsoft Visual Studio Installer Projects插件有兩種方式。一是下載插件單獨安裝,二是在VS裏面在線安裝。

Microsoft Visual Studio Installer Projects下載地址:

官方下載地址:

 

下載下來后,你會在你的保存目錄看到此文件的圖標是這樣的,直接雙擊安裝就可以了,如果打開了Visual Studio,先將VS關閉后再安裝即可。

安裝插件

如果你不能從官網下載到,可以從本站直接下載即可。離線下載安裝的方式適用於斷網環境開發。

VS在線安裝Microsoft Visual Studio Installer Projects

Microsoft Visual Studio Installer Projects插件也可以在線直接安裝,步驟為:點擊菜單欄【擴展(X)】,然後在彈出來的一個窗體裏面,在右側搜索框裏面搜索“Microsoft Visual Studio Installer Projects”,一般第1個就是它了,然後點擊Download(下載),然後安裝就可以了。

VS在線安裝Microsoft Visual Studio Installer Projects

點擊Download后如下:

下載插件

下載完畢后,你需要把VS關閉掉,它會自動的安裝。

自動安裝插件

安裝好了后,啟動VS即可。

創建安裝項目

重新打開Visual Studio,打開一個你現有的包含WPF項目的解決方案即可,然後創建安裝項目。在解決方案上右鍵 –> 【新建項目】–> 【Setup Project】,添加Setup Project項目時,VS2019可以搜索項目模板,如下圖所示。

創建安裝項目

創建好了后,主界面變成如下圖所示:

安裝項目主界面

左邊窗口三個文件夾圖片說明如下:

Application Folder:應用程序包含的文件設置,指最終在客戶電腦上的安裝根目錄。如下圖所示:

應用程序目錄子目錄

User’s Desktop:用戶桌面快捷方式設置,用戶桌面,一般放個快捷圖標。

User’s Programs Menu:用戶啟動菜單的快捷方式設置,一般也是放快捷圖標。

Application Folder是安裝程序的根目錄,你編寫的程序生成的dll,安裝后就存放在這個目錄。

添加項目輸出

安裝項目建好了后,需要要往裡面添加項目輸出,操作方式為:右鍵Application Folder —>Add—>項目輸出。

該操作也可以直接在安裝程序項目類庫上面通過右鍵操作來添加項目輸出,如下圖所示:

右鍵設置屬性

設置項目屬性

項目屬性的設置,是用於最終一個生成安裝程序的描述信息,這個描述信息,這個描述信息主要內容有程序的作者,標題,公司信息,技術支持等等。最直觀的方式可以通過2種方式查看。

第一種查看方式:安裝前將鼠標放到安裝程序文件上,會有提示信息,如下圖所示:

屬性提示

第二種查看方式:安裝后在控制面板處,找到安裝程序,即可查看,如下圖所示:

控制面板看到的安裝后程序描述  

項目屬性的設置方式為:(1)左鍵選中項目,(2)點擊解決方案欄屬性,注意,不是右鍵選擇屬性,而是如下圖一樣選擇屬性。

設置安裝程序屬性

當你點了屬性后,會出現如下的窗口。

設置屬性主窗口

在當前的演示程序中,我是按照上圖做的設置,設置都很簡單,不需要做額外的解釋,如果有不明白的,可以加群與我聯繫。

添加快捷方式圖標

程序安裝好,我們當然希望用戶能夠快速的打開我們的應用程序,你就需要為你的安裝程序製作快捷方式,方法很簡單。

方法:(1)中間窗口右鍵,創建新的快捷方式

創建新的快捷方式

(2)彈窗裏面選擇Application Folder,雙擊進入另外一個界面

創建新的快捷方式第2步

雙擊后,進入下圖這個界面,選擇主輸出即可。

創建新的快捷方式第3步

完了後點擊OK按鈕,就進入下圖這個界面。然後將快捷方式名稱改為你應用程序的名稱。

改快捷方式圖標名稱

改名后的效果:

改名后的效果

最後一步,也是最重要一步,在上圖中選中改名后的圖標,將其拖到左側窗口User’s Desktop目錄即可。

拖動快捷方式圖標到對應位置

開始菜單圖標(User’s Programs Menu)設置方式同上面的步驟是一樣的,這裏就不再重複了。

依賴文件

打包正式項目的時候,界面程序可能依賴於很多其它類庫,或者第3方的dll文件,我們需要把它們一起打包,並且這些第3方程序或者dll需要同主程序在同一個安裝路徑下,那麼在打包時,也就需要額外的把這些文件也打包進來。

所有的操作都可以在中間窗口通過右鍵添加文件,程序集來實現,如下圖所示

添加依賴文件

添加註冊表項目

製作的安裝包如果要添加註冊表項目,可以通過選中安裝程序項目,然後右鍵,在彈出的菜單裏面找到【View】,即可以添加註冊表項目,按照提示一步一步操作即可。

另外有些打包的程序,需要在安裝前或者安裝后做一些額外的操作,都可以通過自定義操作來實現,如主程序安裝好了以後,還得安裝一個windows服務程序,再安裝另外一個自動升級程序,都可以通過這裏來實現。

添加註冊表項目

以上的基本操作熟悉后,相信對於簡單的桌面程序打包應該沒有什麼問題了。

另外需要注意的是,對外打包,需要更改為Release模式

打包依賴框架

最後再說一下關於 .net 環境的問題,如果你需要在打包時,將相應版本的.Net Framework一起打包到安裝程序裏面也是可以的,只是要注意,有可能你的打包機器上並沒有安裝相應的.net framework文件,則需要到官方或者網上下載對應版本的文件,例如這個演示程序,我設定的依賴框架是 4.5.2版本的,那麼需要將NDP452-KB2901907-x86-x64-AllOS-CHS.exe(.net framework 4.5.2安裝文件)放到指定目錄才能正常的生成打包文件。

需要將.net 的離線安裝文件放到以下目錄,其它版本則注意下路徑即可,一般C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages

目錄下面有不同版本的以DotNetFX開頭的目錄,如下圖所示:

依賴框架保存目錄 依賴框架保存目錄

將相應的版本的.net framework框架文件放到對應的目錄即可,我這個演示程序是放到下面這個目錄的。

C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX452\zh-Hans

具體打包步驟為:右鍵安裝項目,選擇屬性,彈出窗口點擊Prerequisites…按鈕。再在彈出的窗口選擇你應用程序需要的框架版本即可。可以選擇多個。

Prerequisites

選擇需要打包的框架版本即可。

框架版本

待安裝程序打包成功后,即可在生成目錄看到該框架的安裝包,如下圖所示:

生成目錄框架文件

好了,以上就是使用VS2019打包WPF安裝程序的完整步驟。

演示程序可以點擊這裏下載。

打包后安裝一覽

成生打包文件成功后,就可以雙擊msi或者exe文件進行安裝了,安裝效果圖如下:

安裝打包程序

選擇安裝目錄

安裝打包程序

在演示的這個打包程序裏面,比較簡單,實際上你可以添加用戶協議文件,輸入用戶信息后才能安裝,這些都可以在打包時設置。

演示程序源碼可以在原文鏈接處下載

本文首發於:

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理
【其他文章推薦】

※為什麼 USB CONNECTOR 是電子產業重要的元件?

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想要讓你的商品成為最夯、最多人討論的話題?網頁設計公司讓你強力曝光

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!

※專營大陸快遞台灣服務

台灣快遞大陸的貨運公司有哪些呢?

每天3分鐘操作系統修鍊秘籍(17):進程間通信(3):套接字

套接字

套接字(Socket)用於協調不同計算機上的進程間通信,也就是基於網絡的通信。當然,也可以在本機上使用套接字進行進程間的通信。

套接字通信的方式非常多,有Unix域套接字、TCP套接字、UDP套接字、鏈路層套接字等等。但最常用的肯定是TCP套接字。所以,這裏介紹下TCP Socket通信方式,稍後再單獨介紹Unix域套接字。

TCP Socket用於客戶端、服務端的基於TCP協議的通信,所以在客戶端和服務端均需要創建一個套接字。創建TCP套接字時會返回這個套接字的文件描述符,可通過這個文件描述符對套接字進行讀和寫操作。

對比一下,當一個程序需要對一個磁盤文件同時進行讀寫操作(在命令行下似乎沒有找到這種命令,但通過編程方式是很容易實現的)時,由於只通過單個文件描述符同時負責讀和寫,很可能需要通過不斷移動文件指針的方式來改變讀寫的位置,否則數據很容易錯亂。

而TCP套接字也是通過單個文件描述符進行讀寫套接字的,為了保證讀和寫的位置不錯亂,操作系統在內核空間為每個TCP套接字維護了兩個buffer空間,一個buffer用於寫、一個buffer用於讀。提供讀的buffer空間稱為recv buffer,提供寫的buffer空間稱為send buffer,它們統稱為socket buffer

所以,服務端和客戶端通過兩個套接字通信就簡單了,一端向send buffer寫數據,該buffer的數據會通過已經建立好的TCP連接發送到另一端的recv buffer,於是另一端只需從recv buffer中讀數據即可實現不同計算機上的進程間通信。過程如圖。

Unix域套接字

Unix域套接字是套接字的一種,用於本機進程間通信,一般用來實現雙向通信的管道。Unix域套接字是比網絡套接字輕量級且高效的多,因為它不涉及網絡通信,不需要監聽連接,不需要綁定地址,不需要關心協議類型,等等。

創建Unix域套接字后返回兩個文件描述符,這兩個文件描述符均對套接字可讀、可寫,從而實現全雙工的雙向通信。

同樣的,為了避免使用單個文件描述符同時讀、寫造成的數據錯亂,Unix域套接字也有兩個buffer空間。

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理
【其他文章推薦】

USB CONNECTOR掌控什麼技術要點? 帶您認識其相關發展及效能

※評比前十大台北網頁設計台北網站設計公司知名案例作品心得分享

※智慧手機時代的來臨,RWD網頁設計已成為網頁設計推薦首選

台灣海運大陸貨務運送流程

兩岸物流進出口一站式服務

程序員修神之路–有狀態的服務其實可以做更多的事情

菜菜哥,你換形象啦?


這麼巧,你也換啦!聽說是不會畫畫的菜嫂經過九牛二虎之力的功勞哦!鼓掌……


前幾天我出去面試了,面試官問我微服務的知識,我回答的可好了


看來微服務你真的下功夫研究了呀


是呀是呀,但是碰到一個問題,有狀態的服務是什麼意思呢?


看來你又掛在這個問題上了,且聽這次分解


簡介

對於初學者,心裏對“有狀態服務”的理解可能比較模糊,但是從面向對象編程思想的角度去理解也許會明朗很多。面向對象編程思想提倡的是用編程語言去描述世間萬物,所以面向對象編程的語言都會提供描述對象的容器以及對象行為的表達方式。舉一個很簡單的栗子,在c#或者java中,表達對象的容器就是class,對象的行為通過一系列的接口或者函數來表達。更進一步,對象抽象出來之後,大多數對象都有自己的內部狀態,體現到代碼上也就是常見的類的屬性。

面向對象編程的基本思想本質上是對現實世界的一種抽象,萬物皆可抽象。

根據業務把對象抽象出來之後,每一個實例化的對象其實都可以有自己的狀態,比如:在最常見的遊戲場景中,每一個玩家都是“玩家”這類對象的一個實例,每一個玩家都有自己的名字,性別,等級,HP等屬性,這些屬性本質上就是玩家的狀態,隨着時間的推移,每個玩家的HP,等級等屬性會隨之變化,這些變化其實就是這個玩家狀態的變化。對應到有狀態的服務也是如此,之所以稱之為有狀態,是因為服務內部的對象狀態會隨着業務有着對應的變動,而這些變動只發生在這個服務內部,在外界看來,這個服務好像是有狀態的。

有狀態的服務本質上是一些有狀態對象的集合,這些對象狀態的變化只發生在當前服務進程中

優勢和劣勢

有狀態服務之所以被稱為有狀態,一個很大的原因是它可以追溯狀態的變化過程,也就是說一個有狀態的服務保存着狀態變化的記錄,並可以根據這些歷史記錄恢復到指定的狀態,這在很多場景下非常有用。舉一個很簡單的栗子:我們平時玩的斗地主遊戲,三個玩家,當有一個玩家因為網絡原因掉線,經過一段時間,這個玩家又重新上線,需要根據某些記錄來恢復玩家掉線期間系統自動出牌的記錄,這些出牌記錄在這個業務中其實就是這個玩家的狀態變化記錄。在有狀態的服務中,很容易做到這一點。

其實實際開發中很多場景不需要記錄每個狀態的變化,只保留最新狀態即可,不單單是因為保存每個狀態的變化需要大量的存儲和架構設計,更因為是很多業務根本不需要這些狀態變化記錄,業務需要的只是最新的狀態,所以大部分有狀態的服務只保存着最新的狀態。

有狀態的服務在設計難度上比無狀態的服務要大很多,不僅僅是因為開發設計人員需要更好的抽象能力,更多的是一致性的設計問題。現代的分佈式系統,都是由多個服務器組成一個集群來對外提供服務,當一個對象在服務器A產生之後,如果請求被分配到了服務器B上,這種情況下有狀態的服務毫無意義,為什麼呢?當一個相同的業務對象存在於不同的服務器上的時候,本質上就違背了現實世界的規則,你能說一個人,即出生在中國,又出生在美國嗎? 所以有狀態的服務對於一致性問題有着天然的要求,這種思想和微服務設計理想不謀而合,舉個栗子:一個用戶信息的服務,對外提供查詢修改能力,凡是用戶信息的業務必須通過這個服務來實現。同理,一個對象狀態的查詢修改以及這個對象的行為,必須由這個對象的服務來完成。

有狀態的服務要求相同業務對象的請求必須被路由到同一個服務進程。

因此,有狀態的服務對於同一個對象的橫向擴容是做不到的,就算是做的到,多個相同對象之間的狀態同步工作也必然會花費更多的資源。在很多場景下,有狀態的服務要注意熱點問題,例如最常見的秒殺,這裏並非是說有狀態服務不適合大併發的場景,反而在高併發的場景下,有狀態的服務往往表現的比無狀態服務更加出色。

Actor模型

在眾多的併發模型中,最適合有狀態服務設計的莫過於Actor模型了,如果你對actor模型還不熟悉,可以擼一遍菜菜之前的文章:https://mp.weixin.qq.com/s/eEiypRysw5jsC7iYUp_yAg  actor模型天生就具備了一致性這種特點,讓我們在對業務進行抽象的時候,不必考慮一致性的問題,而且每一個請求都是異步模式,在對象內部修改對象的狀態不必加鎖,這在傳統的架構中是做不到的。

基於actor模型,系統設計的難點在於抽象業務模型,一旦業務模型穩定,我們完全可以用內存方式來保存對象狀態(也可以定時去持久化),內存方式比用其他網絡存儲(例如redis)要快上幾個量級,菜菜也有一篇文章大家可以去擼一下:https://mp.weixin.qq.com/s/6YL3SnSriKEnpCyB5qkk0g  ,既滿足了一致性,又可以利用進程內對象狀態來應對高併發業務場景,何樂而不為呢?

有不少同學問過我,actor模型要避免出現熱點問題,就算有內存狀態為其加速,那併發數還是超過actor的處理能力怎麼辦呢? 其實和傳統做法類似,所有的高併發系統設計無非就是“分”一個字,無論是簡單的負載均衡,還是複雜的分庫分表策略,都是分治的一種體現。一台服務器不夠,我就上十台,百台…..

所有的高併發系統設計都是基於分治思想,把每一台服務器的能力發揮到極致,難度最大的還是其中的調度算法。

用actor模型來應對高併發,我們可以採用讀寫分離的思想,主actor負責寫請求,並利用某種通信機制把狀態的變化通知到多個從actor,從actor負責對外的讀請求,這個DB的讀寫分離思想一致,其中最難的當屬actor的狀態同步問題了,解決問題的方式千百種,總有一種適合你,歡迎你留言寫下你認為最好的解決方案。

案例(玩家信息服務)

由於菜菜是c#出身,對c#的Actor服務框架Orleans比較熟悉,這裏就以Orleans為例,其他語言的coder不要見怪,Orleans是一個非常優秀的Actor模型框架,而且支持最新的netcore 3.0版本,地址為:https://github.com/dotnet/orleans  有興趣的同學可以去看一下,而且分佈式事物已經出正式版,非常給力。其他語言的也非常出色java:https://github.com/akka/akka

golang:

1. 首先我們定義玩家的狀態信息

//玩家的信息,其實也就是玩家的狀態信息
    public class Player {
        /// <summary>
        /// 玩家id,同時也是玩家這個服務的主鍵
        /// </summary>
        public long Id { getset; }
        /// <summary>
        /// 玩家姓名
        /// </summary>
        public string Name { getset; }
        /// <summary>
        /// 玩家等級
        /// </summary>
        public int Level { getset; }
    }

2. 接下來定義玩家的服務接口

 /// <summary>
    /// 玩家的服務接口
    /// </summary>
    interface IPlayerService: Orleans.IGrainWithIntegerKey
    {
        //獲取玩家名稱
        Task<string> GetName();
        //獲取玩家等級
        Task<int> GetLevel();
        //設置玩家等級,這個操作會改變玩家的狀態
        Task<int> SetLevel(int newLevel);
    }

3. 接下來實現玩家服務的接口

public class PlayerService : GrainIPlayerService
    {
        //這裏可以用玩家的信息來代表玩家的狀態信息,而且這個狀態信息又充當了進程內緩存的作用
        Player playerInfo;
        public async Task<intGetLevel()
        
{
            return (await LoadPlayer()).Level;
        }

        public async Task<stringGetName()
        
{
            return (await LoadPlayer()).Name;
        }

        public async Task<intSetLevel(int newLevel)
        
{
            var playerInfo =await LoadPlayer();
            if (playerInfo != null)
            {
                //先進行數據庫的更新,然後在更新緩存的狀態, 進程內緩存更新失敗的幾率幾乎為0
                playerInfo.Level = newLevel;                
            }
            return 1;
        }

        private async Task< Player> LoadPlayer()
        {
            if (playerInfo == null)
            {
                var id = this.GetPrimaryKeyLong();
                //這裏模擬的信息,真實環境完全可以從持久化設備進行讀取
                playerInfo= new Player() { Id = id, Name = "玩家姓名", Level = 1 };
            }
            return playerInfo;
        }
    }

以上只是一個簡單案例,有狀態的服務還有更多的設計方案,以上只供參考

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理
【其他文章推薦】

台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包”嚨底家”

網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

※想知道購買電動車哪裡補助最多?台中電動車補助資訊懶人包彙整

小三通海運與一般國際貿易有何不同?

小三通快遞通關作業有哪些?