diff options
author | Damien George <damien.p.george@gmail.com> | 2020-03-12 16:46:20 +1100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2020-03-26 01:25:45 +1100 |
commit | bc009fdd62f913e36443f8267ffb6133f537fff3 (patch) | |
tree | 977959e2e1f54abaf233924188e8fcc5e61c8ab8 /extmod/uasyncio/core.py | |
parent | 081d06766223b326b6d7eeceae817b7a3a3f57b0 (diff) | |
download | micropython-bc009fdd62f913e36443f8267ffb6133f537fff3.tar.gz micropython-bc009fdd62f913e36443f8267ffb6133f537fff3.zip |
extmod/uasyncio: Add optional implementation of core uasyncio in C.
Implements Task and TaskQueue classes in C, using a pairing-heap data
structure. Using this reduces RAM use of each Task, and improves overall
performance of the uasyncio scheduler.
Diffstat (limited to 'extmod/uasyncio/core.py')
-rw-r--r-- | extmod/uasyncio/core.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/extmod/uasyncio/core.py b/extmod/uasyncio/core.py index 049e2537f8..5d7191d7fd 100644 --- a/extmod/uasyncio/core.py +++ b/extmod/uasyncio/core.py @@ -4,8 +4,11 @@ from time import ticks_ms as ticks, ticks_diff, ticks_add import sys, select -# Import TaskQueue and Task -from .task import TaskQueue, Task +# Import TaskQueue and Task, preferring built-in C code over Python code +try: + from _uasyncio import TaskQueue, Task +except: + from .task import TaskQueue, Task ################################################################################ |