import cffi ffi = cffi.FFI() ffi.embedding_api(""" int add1(int, int); """) ffi.embedding_init_code(r""" from _tlocal_cffi import ffi import itertools try: import thread g_seen = itertools.count().next except ImportError: import _thread as thread # py3 g_seen = itertools.count().__next__ tloc = thread._local() @ffi.def_extern() def add1(x, y): try: num = tloc.num except AttributeError: num = tloc.num = g_seen() * 1000 return x + y + num """) ffi.set_source("_tlocal_cffi", """ """) fn = ffi.compile(verbose=True) print('FILENAME: %s' % (fn,))