第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

調(diào)用ConfigreA的最佳實(shí)踐-等待所有服務(wù)器端代碼

調(diào)用ConfigreA的最佳實(shí)踐-等待所有服務(wù)器端代碼

白衣染霜花 2019-07-01 11:12:26
調(diào)用ConfigreA的最佳實(shí)踐-等待所有服務(wù)器端代碼當(dāng)您有服務(wù)器端代碼(即ApiController),并且您的函數(shù)是異步的,所以它們返回Task<SomeObject>-是否認(rèn)為最佳做法是,在任何時(shí)候等待你調(diào)用的函數(shù)ConfigureAwait(false)?我已經(jīng)讀到,它具有更高的性能,因?yàn)樗恍枰獙⒕€程上下文切換回原來(lái)的線程上下文。但是,使用ASP.NETWebApi,如果您的請(qǐng)求出現(xiàn)在一個(gè)線程上,并且等待某個(gè)函數(shù)并調(diào)用ConfigureAwait(false),這可能會(huì)使您在返回您的最終結(jié)果時(shí)處于不同的線程中。ApiController功能。我已經(jīng)打了一個(gè)例子來(lái)說(shuō)明我在下面說(shuō)的話:public class CustomerController : ApiController{     public async Task<Customer> Get(int id)     {         // you are on a particular thread here         var customer = await SomeAsyncFunctionThatGetsCustomer(id).ConfigureAwait(false);         // now you are on a different thread!  will that cause problems?         return customer;     }
查看完整描述

3 回答

?
白衣非少年

TA貢獻(xiàn)1155條經(jīng)驗(yàn) 獲得超0個(gè)贊

我發(fā)現(xiàn)使用ConfigreAWaet(False)最大的缺點(diǎn)是線程區(qū)域性被恢復(fù)為系統(tǒng)默認(rèn)值。如果你已經(jīng)配置了一種文化,例如.

<system.web>
    <globalization culture="en-AU" uiCulture="en-AU" />    
    ...

并且您托管在一個(gè)服務(wù)器上,該服務(wù)器的文化設(shè)置為en-US,然后您將在ConfigreAWaet(False)被稱為CultureInfoat之前找到它,現(xiàn)在的文化將返回en-AU,在您獲得en-US之后將返回。E.

// CultureInfo.CurrentCulture ~ {en-AU}await xxxx.ConfigureAwait(false);// CultureInfo.CurrentCulture ~ {en-US}

如果您的應(yīng)用程序正在執(zhí)行任何需要特定于區(qū)域性的數(shù)據(jù)格式的操作,那么在使用ConfigreAWaet(False)時(shí),您需要注意這一點(diǎn)。


查看完整回答
反對(duì) 回復(fù) 2019-07-01
  • 3 回答
  • 0 關(guān)注
  • 515 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)