← Back
Editing: threads.cpython-38.pyc
U W[q � @ s� d Z ddlmZmZ ddlmZ es.ddlZnddlZddlm Z ddl mZ dd� Zd d � Z dd� Zd d� Zdd� Zd dddgZdS )zY Extended thread dispatching support. For basic support see reactor threading API docs. � )�division�absolute_import)�_PY3N)�failure)�deferc s. t �� � � �fdd�}|j||f|�|� � S )a6 Call the function C{f} using a thread from the given threadpool and return the result as a Deferred. This function is only used by client code which is maintaining its own threadpool. To run a function in the reactor's threadpool, use C{deferToThread}. @param reactor: The reactor in whose main thread the Deferred will be invoked. @param threadpool: An object which supports the C{callInThreadWithCallback} method of C{twisted.python.threadpool.ThreadPool}. @param f: The function to call. @param *args: positional arguments to pass to f. @param **kwargs: keyword arguments to pass to f. @return: A Deferred which fires a callback with the result of f, or an errback with a L{twisted.python.failure.Failure} if f throws an exception. c s&