Здравствуйте, уважаемые!
В программировании под *nix я еще чайник, так что не кричите сильно)
В общем написал программу с использованием gtkdatabox для рисования графиков, НО графики рисуются, как анимация. Каким образом: через callaback функцию с интервалом в 15 милисекунд запускаю функцию read(), в которой в цыкле считываю координаты одной точки (X,Y), а потом создаю и отображаю граф с точкой
graph = gtk_databox_points_new (POINTS,X, Y, &color, 2);
gtk_databox_graph_add (GTK_DATABOX (box), graph);
Все бы было хорошо, НО (как мне это слово уже надоело=) ) после одного такого рисования у меня программа жрет 1Гб памяти + swap при этом после такой крутой рисовалки память не освобождается.
При комментировании строки
graph = gtk_databox_points_new (POINTS,X, Y, &color, 2);
оно память не кушает. Значит проблема я так понимаю где-то внутри(((
Может кто сталкивался с такой проблемой или хне плохо знает Gtkdatabox помогите, помогите кто чем может!
Пользователь решил продолжить мысль 15 Июня 2010, 14:28:24:
Сегодня в общем разобрался я с этим. Оказывается чтобы с помощью GtkDatabox рисовать анимацию достаточно только один раз создать граф с некоторыми X,Y, под который ОДИН РАЗ выделяется память. После этого меняя значения X,Y просто запускаем функцию gtk_widget_queue_draw(widget) (которая объявляет, что переданный ему виджет, визуально недействительный и требует перерисовки). Память не кушает, рисует превосходно, доволен, как слон))) Может кому и пригодится...