QThread的一點理解

2021-06-09 15:39:28 字數 488 閱讀 5205

白天在工作中用到的qthread,發現了一些問題,晚上學習了一下,感觸頗深,遂記錄一下~嘻嘻

1、qthread::exec()如果不在run()中最後一行寫出來,普通訊號槽可以用,但是qtimer或qtcpsocket或程序類qprocess的訊號槽不能用!

2、在標頭檔案裡定義的類,是屬於主線程的。比如qtimer,在run()中如果呼叫start();會提示不在同一執行緒的警告。避免這種情況應該把頭檔案裡的類宣告為指標,或者在run()中棧上定義。

3、執行緒間通訊不得不提到connect,最後乙個引數可以分3類,自動連線(auto connection),直接連線(direct connection),佇列連線(queued connection),解釋一下:

4、關閉執行緒,先exit();後wait();避免使用terminate ();

先寫到這~今天對程式設計的認識提高了一些,原來遇到問題都是繞著走,這是不對的!迎難而上,多想多問才會提高,才會對**有更深刻的理解和認識!

UIWebView 的一點理解

uiwebview可以用來方便得顯示url request uiwebview 是從uiview繼承而來的。所以本身並沒有實現scroll。當開啟乙個urlrequest之後,uiwebview 自動建立乙個uiscrollview add 到uiwebview的layer 當開啟當前頁面中的lin...

class new delete的一點理解

今天寫 發現前面new了乙個phead 後面在另乙個函式裡。void a find node p phead do something delete p 沒有報錯 不是很明白為什麼 不是按道理。new才會使用delete配對嗎?這裡沒有出現new怎麼使用delete成功了啊 後面問大大 說是dele...

new,delete的一點理解

include using namespace std new,delete本身不是函式 是關鍵字 但是 int p new int 10 就是呼叫了new運算子過載函式,是函式 new string 10 這樣寫會報錯 編譯器當成強制型別轉換了 invalid conversion from in...