Global Feed Post Login
Replying to Avatar YoshikuniJujo

Extensible Effect界隈では、FTCQueueという「関数を効率的に保存する構造」が使われることがあるのだけど、Haskellでは何もしなければデフォルト遅延評価なのだけど、僕の書いたPNGデコーダーで画像を展開後もメモリが開放されないという問題が生じていて、でそのへんがあやしいなと思って、!(bang)を3ヶ所につけて、積極評価を強制したところ、ちゃんとメモリが開放された。

サンクのままで、GCされないみたいな話だったのかな。

Avatar
YoshikuniJujo 7mo ago

https://github.com/YoshikuniJujo/test_haskell/blob/master/themes/freer-effects/common/try-ftcqueue/src/Data/FTCQueue.hs

Reply to this note

Please Login to reply.

Discussion

Avatar
YoshikuniJujo 7mo ago

メモリがちゃんと解放されたのが、修正したあと1回だけだったから、ちがうかもしれない。

Thread collapsed