1

フィルタリングしている画像が多数あり、作成したシリアルキューでこれを行うと、各ブロックが完了するとメモリが解放されます。この作業をグローバル GCD キューにディスパッチすると、メモリが解放されず、制御不能になります。

ステートメントを自動解放ブロックでラップしましたが、違いはないようです。

スレッドプールが何らかの形でブロックへの参照を保持しているという事実によるものですか? しばらくするとメモリが解放されますが、その前に大量の画像でアプリがクラッシュします。

メモリがグローバル キューによって保持されているのはなぜですか?また、ブロックごとにメモリが解放されるようにするにはどうすればよいでしょうか?

4

1 に答える 1