| Index: third_party/twisted_8_1/twisted/internet/threads.py | 
| diff --git a/third_party/twisted_8_1/twisted/internet/threads.py b/third_party/twisted_8_1/twisted/internet/threads.py | 
| deleted file mode 100644 | 
| index 415b66dca92a981fd379d112074c917153e12b18..0000000000000000000000000000000000000000 | 
| --- a/third_party/twisted_8_1/twisted/internet/threads.py | 
| +++ /dev/null | 
| @@ -1,88 +0,0 @@ | 
| -# Copyright (c) 2001-2007 Twisted Matrix Laboratories. | 
| -# See LICENSE for details. | 
| - | 
| -""" | 
| -Extended thread dispatching support. | 
| - | 
| -For basic support see reactor threading API docs. | 
| - | 
| -Maintainer: U{Itamar Shtull-Trauring<mailto:twisted@itamarst.org>} | 
| -""" | 
| - | 
| -import Queue | 
| - | 
| -from twisted.python import failure | 
| -from twisted.internet import defer | 
| - | 
| - | 
| -def _putResultInDeferred(deferred, f, args, kwargs): | 
| -    """ | 
| -    Run a function and give results to a Deferred. | 
| -    """ | 
| -    from twisted.internet import reactor | 
| -    try: | 
| -        result = f(*args, **kwargs) | 
| -    except: | 
| -        f = failure.Failure() | 
| -        reactor.callFromThread(deferred.errback, f) | 
| -    else: | 
| -        reactor.callFromThread(deferred.callback, result) | 
| - | 
| - | 
| -def deferToThread(f, *args, **kwargs): | 
| -    """ | 
| -    Run function in thread and return result as Deferred. | 
| -    """ | 
| -    d = defer.Deferred() | 
| -    from twisted.internet import reactor | 
| -    reactor.callInThread(_putResultInDeferred, d, f, args, kwargs) | 
| -    return d | 
| - | 
| - | 
| -def _runMultiple(tupleList): | 
| -    """ | 
| -    Run a list of functions. | 
| -    """ | 
| -    for f, args, kwargs in tupleList: | 
| -        f(*args, **kwargs) | 
| - | 
| - | 
| -def callMultipleInThread(tupleList): | 
| -    """ | 
| -    Run a list of functions in the same thread. | 
| - | 
| -    tupleList should be a list of (function, argsList, kwargsDict) tuples. | 
| -    """ | 
| -    from twisted.internet import reactor | 
| -    reactor.callInThread(_runMultiple, tupleList) | 
| - | 
| - | 
| -def blockingCallFromThread(reactor, f, *a, **kw): | 
| -    """ | 
| -    Run a function in the reactor from a thread, and wait for the result | 
| -    synchronously, i.e. until the callback chain returned by the function | 
| -    get a result. | 
| - | 
| -    @param reactor: The L{IReactorThreads} provider which will be used to | 
| -        schedule the function call. | 
| -    @param f: the callable to run in the reactor thread | 
| -    @type f: any callable. | 
| -    @param a: the arguments to pass to C{f}. | 
| -    @param kw: the keyword arguments to pass to C{f}. | 
| - | 
| -    @return: the result of the callback chain. | 
| -    @raise: any error raised during the callback chain. | 
| -    """ | 
| -    queue = Queue.Queue() | 
| -    def _callFromThread(): | 
| -        result = defer.maybeDeferred(f, *a, **kw) | 
| -        result.addBoth(queue.put) | 
| -    reactor.callFromThread(_callFromThread) | 
| -    result = queue.get() | 
| -    if isinstance(result, failure.Failure): | 
| -        result.raiseException() | 
| -    return result | 
| - | 
| - | 
| -__all__ = ["deferToThread", "callMultipleInThread", "blockingCallFromThread"] | 
| - | 
|  |