線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:5424
推到 Plurk!
推到 Facebook!

From C++ Builder to Qt > From TThread to QThread

 
happosai
高階會員


發表:93
回覆:228
積分:109
註冊:2002-09-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2016-01-05 01:36:30 IP:114.44.xxx.xxx 訂閱
http://goodspeedlee.blogspot.tw/2016/01/from-c-builder-to-qt-from-tthread-to.html

小弟已經轉換到 Qt 好一陣子了,這裡有篇心得給大家參考看看~
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2016-01-05 09:37:26 IP:60.250.xxx.xxx 訂閱
感謝分享^_^
jcjroc
高階會員


發表:21
回覆:279
積分:115
註冊:2002-09-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2016-01-11 09:12:49 IP:210.61.xxx.xxx 訂閱
Thread 用SDK 自己刻沒那麼難吧!!如果只在Windows的話.
happosai
高階會員


發表:93
回覆:228
積分:109
註冊:2002-09-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2016-01-11 16:10:11 IP:36.226.xxx.xxx 訂閱
是不難,麻煩的是跟 VCL 互動,Qt 也有同樣的問題,這篇文章主要是講兩者對於這個問題處理方式的差異。
jcjroc
高階會員


發表:21
回覆:279
積分:115
註冊:2002-09-18

發送簡訊給我
#5 引用回覆 回覆 發表時間:2016-01-18 09:30:24 IP:210.61.xxx.xxx 訂閱
也沒那麼麻煩吧!!!
引用外部 framwork 在開發工具升級時,常會有無法相容的問題.
TThread or QThread 只是封裝了thread 並附加實現一些簡易同步機制.
但這些如果用SDK做,程式碼也不困難.
不過以Qt在同步機制的作法,個人是覺得太過於複雜
===================引 用 happosai 文 章===================
是不難,麻煩的是跟 VCL 互動,Qt 也有同樣的問題,這篇文章主要是講兩者對於這個問題處理方式的差異。
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#6 引用回覆 回覆 發表時間:2016-01-18 11:29:11 IP:60.250.xxx.xxx 訂閱
還有人願意來這分享實屬不易
如果有實例來論述[沒那麼難] [沒那麼麻煩]來造福後進就更棒了~~



jcjroc
高階會員


發表:21
回覆:279
積分:115
註冊:2002-09-18

發送簡訊給我
#7 引用回覆 回覆 發表時間:2016-01-22 16:20:53 IP:210.61.xxx.xxx 訂閱
1. 沒辦法就本文上傳附件(一個不負責任的範例)http://delphi.ktop.com.tw/board.php?cid=31&fid=130&tid=108764

2.簡單的說,需要兩個Queu,一個給Thread 收取其他Thread交付要處理的資料(ThreadQueu),一個給Form 用(FormQueu)

3.Thread 會等待一個Event,當推入資料給ThreadQueu後,設定該Event以通知Thread 有新資料要處理

4.至於Thread要送給Form的,當資料推入給FormQueu後,使用PostMessage發出一個自訂訊息給Form以通知有資料要處理



基本原則:

所有Queu的資料存取皆要用同步化物件進行保護(如CriticalSection)

個人經驗:
以目前TThread 所提供的功能,說實在沒有啥存在的必要,但如果要寫一個不負責任的程式且懶蟲發威不想敲鍵盤時就會拿來用





最後的建議.........不要在Thread中使用VCL

===================引 用 taishyang 文 章=================== 還有人願意來這分享實屬不易
如果有實例來論述[沒那麼難] [沒那麼麻煩]來造福後進就更棒了~~




編輯記錄
jcjroc 重新編輯於 2016-01-22 16:27:29, 註解 無‧
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#8 引用回覆 回覆 發表時間:2016-01-25 09:43:32 IP:60.250.xxx.xxx 訂閱
感謝分享 ^___^
happosai
高階會員


發表:93
回覆:228
積分:109
註冊:2002-09-15

發送簡訊給我
#9 引用回覆 回覆 發表時間:2016-04-27 13:31:31 IP:111.248.xxx.xxx 訂閱
在 QThread 內可以放心使用從 QObject 繼承過來的 class
系統時間:2024-11-21 17:25:28
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!