Skip to content

Commit d0b73a1

Browse files
committed
resource/udev: import pyudev on-demand
This matches the approach we have in other placesalready and improves the startup time of labgrid-client by ~5%. Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
1 parent 200598f commit d0b73a1

1 file changed

Lines changed: 5 additions & 4 deletions

File tree

labgrid/resource/udev.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
import queue
55
import warnings
66
from collections import OrderedDict
7+
from importlib import import_module
78

89
import attr
9-
import pyudev
1010

1111
from ..factory import target_factory
1212
from .common import ManagedResource, ResourceManager
@@ -21,9 +21,10 @@ def __attrs_post_init__(self):
2121
self.queue = queue.Queue()
2222

2323
self.log = logging.getLogger('UdevManager')
24-
self._context = pyudev.Context()
25-
self._monitor = pyudev.Monitor.from_netlink(self._context)
26-
self._observer = pyudev.MonitorObserver(self._monitor,
24+
self._pyudev = import_module('pyudev')
25+
self._context = self._pyudev.Context()
26+
self._monitor = self._pyudev.Monitor.from_netlink(self._context)
27+
self._observer = self._pyudev.MonitorObserver(self._monitor,
2728
callback=self._insert_into_queue)
2829
self._observer.start()
2930

0 commit comments

Comments
 (0)