From: <jc...@fe...> - 2004-01-16 00:15:47
|
On Thursday 15 January 2004 09:27, Maurice LeBrun wrote: | Jay Christnach writes: | > hello again! | > to answer my previous question: | > My 50 channel oscilloscope application is feasible with plplot as graph | > library. It is really fast. I use the polygon fill function to erase | > previous plotted data. | > | > but another problem: | > If I let the program run a long time my hard disk fills up. It took | > some time to find out what file would get so huge, because the file | > doesn't show up in the filesystem, because it is already deleted. | > (funny phenomenon). #lsof -c scope | > COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME | > (...) | > scope 32031 root 6u REG 8,3 1415630848 19684 | > /tmp/tmpfXiOQuk (deleted) | | Heh. That looks like the plot buffer. As you create a plot under X, the | plot buffer pseudo-device is written to, so that on window expose or redraw | events, the prior contents of the window can be recovered. It's closed at | every end-of-page, and my guess is that you aren't issuing any.. LOL. | There really should be a size limitation on it though.. >1G is way, way too | big. :) | | Although there is no API control for this, fortunately you do have access | through the plplot stream pointer. You can disable writing to the plot | buffer entirely by setting pls->plbuf_write to 0. Or keep it writing by | default but control its contents through manipulating pls->plbufFile. See | src/plbuf.c for more info. If using the xwin driver, you can use the "-drvopt nobuffered" cmd line driver option. Programatically, use plSetOpt("drvopt","nobuffered") Joao |