2012-01-07 18 views
1

QSqlQuery複数のデータベースを照会して同じメモリsqliteデータベースの異なるテーブルに挿入すると、スレッドセーフなロックがあるのでプログラムを高速化できません。メモリsqliteデータベースを使用しているときにQSqlQueryのスレッドロックがあります

私はWindows APISetThreadAffinityMaskを使って、別のスレッドが別のCPUスレッドで動作していることを確認します。しかし、私の場合、CPU使用率が40%を超えることはありませんでした。(私の場合、4つのCPUスレッドを持っている私のPC上では4つのQSqlQueryスレッドがあります)

ロックがあれば、どうすれば取り除けますか?

答えて

0

これは正しい方向を指しているでしょうか?

SQLite thread safety

SQLite FAQ

+1

私は純粋 'sqlite'でそれを使用することができますが、今I'mは' Qt'を使用して知っています。 'sqlite'メモリデータベースにはスレッドロックがありません。メモリデータベースに関係なくQtにロックがあるかどうかはわかりません。 – xucheng

関連する問題