簡體   English   中英

應用程序的CPU使用率高達100%

[英]Application got stuck with CPU usage up to 100%

我的應用程序卡在CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION 在我的應用程序中,我調用了一個異步的C函數。 我在執行過程中顯示了一個等待的消息。
終止此函數后,它將調用委托以關閉該等待的msg,並同時顯示AlertView。

我用gcd顯示alertview

dispatch_async(dispatch_queue_create("com.myapp.service.waitingmessage", nil), ^{
            dispatch_async(dispatch_get_main_queue(), ^{
            UIAlertView *anAlert = ...
            [anAlert show];
             });
        });

這是應用程序卡住時Debugger XCode的屏幕截圖。 我還看到我的應用程序的CPU使用率高達100%,這也許就是為什么該應用程序被系統掛起的原因。

在此處輸入圖片說明

使用dispatch_sync()代替dispatch_async(dispatch_get_main_queue(), ^{...

您無法從后台線程更新UI。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM