UWP中如何利用非同步程式設計跳出死迴圈

2021-07-15 19:48:08 字數 517 閱讀 3734

uwp中,我設定了兩個按鈕,單擊第乙個按鈕進行乙個迴圈,單擊第二個按鈕停止這個迴圈,但是不管怎麼處理按下第乙個按鈕以後都成了乙個死迴圈,程式呈現卡死狀態。這就讓我想到必須要用非同步程式設計來解決這個問題,網上uwp的教程什麼的實在太少了,在msdn裡面研究了一天到底怎麼寫非同步,終於是讓我給解決了!

接下來就簡單講一下怎麼進行非同步程式設計跳出這個死迴圈:

private async void firstbutton_click(object sender, routedeventargs e)

while (secondbutton.visibility == visibility.visible);

}catch (exception)

}async taskname() // name為自己定義的函式

大致上就是這樣啦~

要新增的namespace:

using system.threading.tasks;

利用 async await 的非同步程式設計

通過使用非同步程式設計,你可以避免效能瓶頸並增強你的應用程式的總體響應能力。從 vs 2012 開始,新引入了乙個簡化的方法,稱為非同步程式設計。我們在 net 4.5 中和 windows 執行時中使用非同步,編譯器它會幫助了我們降低了曾經進行的高難度非同步 編寫的工作,但邏輯結構卻類似於同步 因...

java中利用標記跳出多重迴圈

需求 對結果集 已經從資料庫中得到結果集 進行過濾,listir為實體 條件 1 不能為空 2 最終得到的結果集不能為空 實質就是把過濾好的結果集放到另乙個結果集中。listlist irdao.findnopageirlist params,searchtemplate listresultnop...

python中如何跳出多個迴圈

break語句只能跳出當前的迴圈,但是如果我們要跳出多個巢狀的迴圈,該如何實現呢?可以通過定義乙個儲存迴圈狀態的變數,然後再結合判斷語句即可,看如下 bool flag 1 false while true while true bool flag 2 false for i in range 3 ...