掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
FMX-TBitmapはThread-safe? (ID:151819)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
何度もお節介ですいません。 TTaskを実用的に使用しようとすると、色々と多くの考慮しなければならない点があります。 例えば「並列プログラミングでのスレッドプーリングの概要」 https://docwiki.embarcadero.com/Support/ja/%E4%B8%A6%E5%88%97%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%A7%E3%81%AE%E3%82%B9%E3%83%AC%E3%83%83%E3%83%89%E3%83%97%E3%83%BC%E3%83%AA%E3%83%B3%E3%82%B0%E3%81%AE%E6%A6%82%E8%A6%81 にあるように、 TThreadPool.Default.MaxWorkerThreads; で最大スレッド数も配慮しなければなりません。 最大スレッド数を超えるTTask.Runが呼び出されると、どうなるのかはわからないのですが、 例えば「人物写真から目の領域、顔の領域座標を取得(Haar Cascade) ~Delphiソースコード集」 https://mam-mam.net/delphi/haar_cascade.html では、 MaxWorkerThreadsCount:=TThreadPool.Default.MaxWorkerThreads; として、最大スレッド数を取得しMaxWorkerThreadsCount個を超えるTTaskを使用しないようにしています。 数個のTTaskを使用するだけなら問題ないのですが、大量に使用する場合は配慮が必要です。 今般の場合は関係ないかもですが、誠にお節介ですいません。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.