Python Intro - select.epoll
https://www.programcreek.com/python/example/3782/select.epoll
Python select.epoll Examples
The following are 20 code examples for showing how to use select.epoll. They are extracted from open source Python projects. You can click
to vote up the examples you like, or click
to vote down the exmaples you don't like. Your votes will be used in our system to extract more high-quality examples.
You may also check out all available functions/classes of the module select , or try the search function
.
Example 1
From project elements, under directory lib/elements/async, in source file event.py.
|
Score: 22
|
def __init__ (self, server):
"""
Create a new EPollEventManager instance.
@param server (Server) The Server instance under which this EPollEventManager is being created.
"""
PollEventManager.__init__(self, server)
self._poll = select.epoll()
self.EVENT_ERROR = select.EPOLLERR
self.EVENT_READ = select.EPOLLIN | select.EPOLLPRI
self.EVENT_WRITE = select.EPOLLOUT
self.EVENT_LINGER = select.EPOLLHUP
# ----------------------------------------------------------------------------------------------------------------------
Example 2
From project mandimus-master, under directory , in source file MainThread.py.
|
Score: 13
|
def __init__(self):
# this needs to run before any user modes are imported
self.epoll = select.epoll()
self.timers = []
EventLoop.event_loop = self
self.run = True
self.events = collections.deque()
self.eventsLock = Lock()
self.eventSubscribers = {}
self.fileSubscribers = {}
self.dfly = DragonflyThread(('', 23133), self)
self.win = WindowEventWatcher(self, filterWindows)
self.subscribeEvent(RestartEvent, self.restart)
self.subscribeEvent(ExitEvent, self.stop)
mapping = { "restart mandimus" : (lambda x: self.put(RestartEvent())),
"completely exit mandimus" : (lambda x: self.put(ExitEvent())) }
self.MainControlRule = makeContextualRule("MainControlRule", mapping, ruleType=RuleType.INDEPENDENT)
self.MainControlRule.activate()
Example 3
From project ideerfs, under directory , in source file epoll_server.py.
|
Score: 13
|
def mainloop(self):
self.socket.setblocking(0) # Non blocking socket server
self.clients = {}
self.epoll = select.epoll()
self.epoll.register(self.socket.fileno(), select.EPOLLIN) # Level triggerred
while True:
if self.shutdown: # Gracefully shutdown
break
events = self.epoll.poll(1) # Timeout 1 second
for fileno, event in events:
try:
if fileno == self.socket.fileno(): # New connection on server socket
self.accept_clients()
elif event & select.EPOLLIN: # Although it's level triggerred, read or write as more as possible
self.epoll_in(fileno)
elif event & select.EPOLLOUT:
self.epoll_out(fileno)
elif event & select.EPOLLHUP:
self.epoll_hup(fileno)
except socket.error, err:
debug('epoll event exception: %s', err)
if err.errno == 11: # Catch the Errno
pass
else:
raise
self.epoll.unregister(self.socket.fileno())
self.epoll.close()
self.socket.close()
Example 4
From project adv-net-samples-master, under directory sdn/pox/pox/lib, in source file epoll_select.py.
|
Score: 10
|
def __init__(self):
self.epoll = select.epoll()
self.fd_to_obj = {}
self.registered = {}
self.lastrl = []
self.lastrl_set = set()
self.lastwl = []
self.lastwl_set = set()
Example 5
From project ScratchABit-master, under directory curses, in source file __init__.py.
|
Score: 10
|
def getch(self):
if self.keybuf and self.keyi < len(self.keybuf):
c = self.keybuf[self.keyi]
self.keyi += 1
return c
if self.keydelay >= 0:
USE_EPOLL = 1
if USE_EPOLL:
poll = select.epoll()
poll.register(0, select.EPOLLIN)
res = poll.poll(self.keydelay / 1000)
poll.unregister(0)
poll.close()
else:
res = select.select([0], [], [], self.keydelay / 1000)[0]
if not res:
return -1
key = os.read(0, 32)
if key[0] != 0x1b:
self.keybuf = key
self.keyi = 1
key = key[0]
else:
if key in KEYMAP:
key = KEYMAP[key]
else:
assert False, repr(key)
return key
Example 6
From project corrosion, under directory src/corrosion/core, in source file scheduler.py.
|
Score: 10
|
def __init__(self):
self._epoll = select.epoll()
self._tasks = {}
self._ready_queue = Queue()
self._waiting_read = {}
self._waiting_write = {}
self._waiting_end = {}
Example 7
From project ideerfs, under directory bak, in source file aio.py.
|
Score: 10
|
def __init__(self):
self.io_queue = {}
self.shutdown = False
self.epoll = select.epoll()
thread.start_new_thread(self._mainloop, ())
Example 8
From project diesel, under directory diesel, in source file hub.py.
|
Score: 10
|
def __init__(self):
self.epoll = select.epoll()
self.signal_handlers = defaultdict(deque)
super(EPollEventHub, self).__init__()
Example 9
From project Testify, under directory testify/plugins, in source file violation_collector.py.
|
Score: 10
|
def _setup_pipe(self):
"""Setup a pipe to enable communication between parent and
traced child processes.
Adding tests and adding violations to the database is done
through different processes. We use this pipe to update the
last test id to be used while inserting Violations. Although
it is possible to get it from the database we'll use the pipe
not to make a db query each time we add a violation (and would
really work when there is multiple builders writing to the
database).
"""
self.test_id_read_fd, self.test_id_write_fd = os.pipe()
if fcntl:
fcntl.fcntl(self.test_id_read_fd, fcntl.F_SETFL, os.O_NONBLOCK)
self.epoll = select.epoll()
self.epoll.register(self.test_id_read_fd, select.EPOLLIN | select.EPOLLET)
Example 10
From project IncPy, under directory Lib/test, in source file test_epoll.py.
|
Score: 10
|
def test_badcreate(self):
self.assertRaises(TypeError, select.epoll, 1, 2, 3)
self.assertRaises(TypeError, select.epoll, 'foo')
self.assertRaises(TypeError, select.epoll, None)
self.assertRaises(TypeError, select.epoll, ())
self.assertRaises(TypeError, select.epoll, ['foo'])
self.assertRaises(TypeError, select.epoll, {})
Example 11
From project pycopia-master, under directory QA/pycopia/remote, in source file pyro.py.
|
Score: 10
|
def __init__(self, pyrodaemon):
self._pyrod = pyrodaemon
self._poller = select.epoll()
self.smap = {}
self.update()
Example 12
From project pycopia-master, under directory core/pycopia, in source file asyncio.py.
|
Score: 10
|
def __init__(self):
self.smap = {}
self._fd_callbacks = {}
self._idle_callbacks = {}
self._idle_handle = 0
self.pollster = select.epoll()
self.closed = False
fd = self.pollster.fileno()
flags = fcntl.fcntl(fd, fcntl.F_GETFD)
flags |= fcntl.FD_CLOEXEC
fcntl.fcntl(fd, fcntl.F_SETFD, flags)
Example 13
From project exp, under directory , in source file udp2tcp.py.
|
Score: 8
|
def do_server(port, host_tr_spec):
host_tr = { }
for src, dst in host_tr_spec:
host_tr[ ip_int(src) ] = dst
def unpack(dat):
hdr_len = struct.calcsize(ADDR_FMT)
host_int, port = struct.unpack(ADDR_FMT, dat[ :hdr_len])
return (host_int, port, dat[hdr_len: ])
svr_sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
svr_sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
svr_sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
svr_sock.bind(("localhost", port))
svr_sock.listen(1)
conn, addr = svr_sock.accept()
print("The tunnel conn with {} was established.".format(addr))
udp_sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
udp_sock.bind(("0.0.0.0", 223))
fd2s = { }
epoll = select.epoll()
conn_fd = conn.fileno()
epoll.register(conn_fd, select.EPOLLIN)
fd = udp_sock.fileno()
epoll.register(fd, select.EPOLLIN)
fd2s[fd] = udp_sock
while True:
evts = epoll.poll