1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
#! /usr/bin/env python
import time
import gnomevfs
import thread
import sys
context = gnomevfs.Context()
def do_something(context):
print 'Running counter in thread %s' % thread.get_ident()
c = 0
while True:
time.sleep(0.1)
c += 1
print c
if context.check_cancellation():
print 'Cancelled counter'
break
def cancel_in_thread(context):
print 'Calling cancel in thread %s' % thread.get_ident()
context.cancel()
if __name__ == '__main__':
thread.start_new_thread(do_something, (context,))
thread.start_new_thread(cancel_in_thread, (context,))
time.sleep(1)
context.cancel()
time.sleep(1)
|