Perfect, thanks!

On 28 Feb 2015 08:51, "Yuras Shumovich" <shumovichy@gmail.com> wrote:
On Sat, 2015-02-28 at 08:31 -0800, Alex Hammel wrote:
> Forwarding from Haskell-Beginners:
>
> Hi list,
>
> It would be handy for me to have a bounded STM Queue along the lines of
> TBQueue with the difference that when the queue is full, a call to
> writeTBQueue is a non-blocking no-op.
>
> This is in the context of an asynchronous logging system. If the load
> (somehow) gets heavy enough that the log message queue is taking up a lot
> of memory, It's better to lose a few log messages than to have processes
> block until the logger catches up.
>
> Are there any off-the-shelf solutions?

You can try the stm-chans package:
http://hackage.haskell.org/package/stm-chans-3.0.0.2/docs/Control-Concurrent-STM-TBMQueue.html#v:tryWriteTBMQueue

Thanks,
Yuras

>
> Cheers,
> Alex
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe