私はこのようなQImage
を作成する:QImageに提供されたデータはいつ削除できますか?
unsigned char* const rawImage = (unsigned char*)std::malloc(WIDTH*HEIGHT*3);
for (...) {
// Populate the image here
}
QImage img(rawImage, WIDTH, HEIGHT, QImage::Format_RGB888);
Iは、別のスレッド(特にGUIスレッド)にその画像の信号をポスト:
emit imageRendered(img);
私はその後、データを削除することができると思った。
delete rawImage;
しかし、これにより、他のスレッドでセグメント化エラーが発生します。生のイメージを削除しないと、プログラムは使用可能なすべてのメモリを消費します。生データを削除できるようにQImageの安全なコピーを作成するには?