[erlang-questions] Memory-effective queue handling
Attila Rajmund Nohl
attila.r.nohl@REDACTED
Tue Jul 24 17:11:31 CEST 2012
Hello!
I have a data structure where I manage "historical data": a list of
timestamps when events happened. I only need to know how many events
happened in the last 24 hours. When an event happens, I put the
timestamp into the queue (I use the queue module in OTP). When I check
how many values are in the queue, I also remove the entries that are
older than 24 hours. My problem is: when I remove the old elements, I
can do it one by one and at each step the (possibly big) queue gets
copied and I run out of memory. Is there a cleverer way to remove
elements from queue? Or maybe I shall use an ordered_set ETS table
instead of a queue?
More information about the erlang-questions
mailing list