threaded.py 文件源码

python
阅读 44 收藏 0 点赞 0 评论 0

项目:acris 作者: Acrisel 项目源码 文件源码
def __call__(self,method):
        @wraps(method)
        def wrapper(*args, **kwargs): 
            async_result = ThreadedResult() 
            def _method(): 
                async_result.start()
                try: 
                    result=method(*args, **kwargs) 
                except Exception as e: 
                    trace=inspect.trace()
                    trace=traces(trace,start=0, end=None)
                    if self.log: logger.error("%s\n    %s" % (repr(e), '\n    '.join(trace)))
                    async_result.fail(trace)
                else:
                    async_result.succeed(result)
            t=Thread(target = _method)
            t.start() 
            async_result.set_thread(t)
            return async_result 
        return wrapper
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号