From 4b31e5acf142664c2f2ebd2e0cfa26e700d947d7 Mon Sep 17 00:00:00 2001 From: Florent Le Coz Date: Mon, 14 Feb 2011 14:54:26 +0100 Subject: Make the number of lines and messages kept in memory configurable and lower (a lot) the number of lines kept in the info_win buffers This lower the memory usage. --- src/text_buffer.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/text_buffer.py') diff --git a/src/text_buffer.py b/src/text_buffer.py index 9285a433..3b2ddd1a 100644 --- a/src/text_buffer.py +++ b/src/text_buffer.py @@ -24,15 +24,15 @@ log = logging.getLogger(__name__) from message import Message from datetime import datetime import theme - -MESSAGE_NB_LIMIT = 8192 +from config import config class TextBuffer(object): """ This class just keep trace of messages, in a list with various informations and attributes. """ - def __init__(self): + def __init__(self, messages_nb_limit=config.get('max_messages_in_memory', 2048)): + self.messages_nb_limit = messages_nb_limit self.messages = [] # Message objects self.windows = [] # we keep track of one or more windows # so we can pass the new messages to them, as they are added, so @@ -47,7 +47,7 @@ class TextBuffer(object): time = time or datetime.now() msg = Message(txt, time, nickname, nick_color, color, colorized) self.messages.append(msg) - while len(self.messages) > MESSAGE_NB_LIMIT: + while len(self.messages) > self.messages_nb_limit: self.messages.pop(0) for window in self.windows: # make the associated windows # build the lines from the new message -- cgit v1.2.3