def Semaphore(*args, **kwargs):
return _Semaphore(*args, **kwargs)
import curses import sys from threading import Thread from threading import Semaphore from processes_module import ProcessesModule from clock_module import ClockModule painting_semaphore = Semaphore(value=1)
src/p/y/python-promise-HEAD/promise/threadpool.py python-promise(Download)
import threading
from threading import Thread
from threading import RLock
from threading import Semaphore
from collections import deque
class ThreadPool(object):
def __init__(self, thread_count = 10):
self.resize_lock = RLock()
self.debug_print_lock = RLock()
self.job_semaphore = Semaphore(0)
src/p/l/planes-HEAD/python/threadtools.py planes(Download)
__all__ = ['synchronized', 'ThreadedPromptController'] from threading import Semaphore, Lock from threading import currentThread import sys
def synchronized_function(function, count = 1, semaphore = None):
"""Decorates a function with a semaphore so that only one thread may run
it at any time."""
if semaphore is None:
semaphore = Semaphore(count)
def wrapped(*arguments, **keywords):
semaphore.acquire()
def synchronized_property(attr, semaphore = None):
if semaphore is None:
semaphore = Semaphore(1)
@Synchronized(semaphore = semaphore)
def get(self):
return getattr(self, attr)
@Synchronized(semaphore = semaphore)
class Foo(object):
semaphore = Semaphore()
a = synchronized_property('_a', semaphore)
b = synchronized_property('_b', semaphore)
foo = Foo()
foo.a = 10
src/y/o/youtubed-2x-HEAD/trunk/youtubed2x_lib/ui/models/queuemanager.py youtubed-2x(Download)
import os import gtk import gobject import time from threading import Lock, Semaphore from videodownloadthread import VideoDownloadThread from youtubed2x_lib.sessioninfo import SessionInfo, SessionItem
raise Exception ("Download speed limit is less than zero. Passed: %s" % app_settings.download_speed_limit)
self._sem_limit = app_settings.process_limit
self.semaphore = Semaphore (self._sem_limit)
self.sem_lock = Lock ()
self.app_settings = app_settings
self.lock = Lock ()
# Used to keep track of downloaded bytes across all downloads
self.download_speed_total = 0
# Limit the number of transcoding process
self.transcode_semaphore = Semaphore (1)
def register (self, signal, observer):
def alter_sem (self, value):
self.sem_lock.acquire ()
if isinstance (value, int) and value >= 0:
if value == 0:
self.semaphore = Semaphore (value)
elif value >= self._running_items:
self.semaphore = Semaphore (value-self._running_items)
src/p/y/pyesp-HEAD/src/run_poc1.py pyesp(Download)
from poc1.TestProfiler import TestProfiler from poc1.SimpleRulesSet import SimpleRulesSet from threading import Event, Lock, Semaphore from sys import argv, stdout from socket import setdefaulttimeout import operator, random
# Socket timeout - 20 sec setdefaulttimeout (SOCKET_TIMEOUT) # Download 10 pages at the same time sem = Semaphore (SAME_TIME_DOWNLOADS) # Number of results in the "user-domain" query.NO_OF_RESULTES = TOTAL_URLS
src/y/o/youtubed-2x-HEAD/youtubed2x_lib/ui/models/queuemanager.py youtubed-2x(Download)
import os import gtk import gobject import time from threading import Lock, Semaphore from videodownloadthread import VideoDownloadThread from youtubed2x_lib.sessioninfo import SessionInfo, SessionItem
raise Exception ("Download speed limit is less than zero. Passed: %s" % app_settings.download_speed_limit)
self._sem_limit = app_settings.process_limit
self.semaphore = Semaphore (self._sem_limit)
self.sem_lock = Lock ()
self.app_settings = app_settings
self.lock = Lock ()
# Used to keep track of downloaded bytes across all downloads
self.download_speed_total = 0
# Limit the number of transcoding process
self.transcode_semaphore = Semaphore (1)
def register (self, signal, observer):
def alter_sem (self, value):
self.sem_lock.acquire ()
if isinstance (value, int) and value >= 0:
if value == 0:
self.semaphore = Semaphore (value)
elif value >= self._running_items:
self.semaphore = Semaphore (value-self._running_items)
src/p/a/papy-1.0b1/src/IMap/IMap.py papy(Download)
'http://rpyc.wikidot.com/'
# Threading and Queues
from threading import Thread, Semaphore, Event
from threading import Lock as tLock
from Queue import Queue, Empty
# for PriorityQueue
self._task_queue = Weave(self._tasks, self.stride)
# here we determine the size of the maximum memory consumption
self._semaphore_value = (self.buffer or (len(self._tasks) * self.stride))
self._pool_semaphore = Semaphore(self._semaphore_value)
# start the pool getter thread
src/y/a/yad-HEAD/src/yad.py yad(Download)
#!/usr/bin/env python import time import urllib2 import os,sys import getopt # command line argument parser from threading import Thread,Semaphore
} # connection headers
self.block_size=1024 # default block size
self.threads = threads # total number of threads to use
self.semaphore = Semaphore(self.threads) # counting Semaphore with value equal to number of threads
self.debug=False # if debug run
self.working=True # for threads to work
self.thread_objs=[] # for holding thread objects
self.resume_support=False # clear resume support
self.threads=1 # set number of threads to one
del(self.semaphore) # delete old semaphore object
self.semaphore = Semaphore(1) # set new semaphore object with value =1
def createThreads(self,url,filename,size):
'''
src/o/r/orcatorrent-HEAD/Main/Utility/utility.py orcatorrent(Download)
import os import socket import random from threading import Event, Semaphore from time import sleep from sha import sha from traceback import print_exc
self.invalidwinfilenamechar += chr(i)
self.invalidwinfilenamechar += '"*/:<>?\\|'
self.FILESEM = Semaphore(1)
warned = self.config.Read('torrentassociationwarned','int')
if (sys.platform == 'win32' and not warned):
src/p/e/peyote-HEAD/gsttag.py peyote(Download)
#!/usr/bin/env python # -*- coding: utf8 -*- import gst,time from threading import Semaphore class GstDetect:
bus = self.player.get_bus()
bus.add_signal_watch()
bus.connect("message", self.on_message)
self.sem = Semaphore(0)
self.time_format = gst.Format(gst.FORMAT_TIME)
def get_duration(self, filepath):
try:
del self.sem
self.sem = Semaphore(0)
def get_tags(self, filepath):
try:
self.tag = {}
del self.sem
self.sem = Semaphore(0)
if filepath.find('://') == -1:
self.player.set_property("uri", "file://" + filepath)
1 | 2 | 3 | 4 | 5 | 6 Next