Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > media > main-release > by-pkgid > 2a298ec372931d4b4639b27b73d769b4 > files > 15

gnome-python-gnomevfs-2.22.0-1mdv2008.1.x86_64.rpm

#! /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)