code: def callAfter(func, *args, **kwargs):
      
      pool = NSAutoreleasePool.alloc().init()
      obj = PyObjCAppHelperCaller_wrap.alloc().initWithArgs_((func, args, kwargs))
      obj.callAfter_(None)
      del obj
      del pool
docs: call a function on the main thread (async)