Portál AbcLinuxu, 7. listopadu 2025 21:14
#!/usr/bin/env python
import gtk, gobject, subprocess, sys, time
class TOPwatch:
def __init__(self):
cmd = ['top', '-b', '-d', '3']
process = subprocess.Popen(cmd, stdout = subprocess.PIPE)
gobject.io_add_watch(process.stdout, gobject.IO_IN, self.newdata)
w = gtk.Window()
w.connect('destroy', gtk.main_quit)
w.show()
gtk.main()
def newdata(self, fd, condition):
print time.asctime(), 'new data!'
sys.stdout.write(fd.readline())
return True
top = TOPwatch()
Pomocí gobject.io_add_watch vyvolávám událost, jestliže jsou k dispozici nějaká data ke čtení. Je možné také přidat podmínku pro sledování, zda se dají nějaká data zapsat, což by znamenalo, že se objevil potvrzovací dotaz. Ale to nemám vyzkoušené.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.