I have the following code:
JavaScript
3
1
async some_callback(args):
2
await some_function()
3
and I need to give it to a Thread as a target:
JavaScript
3
1
_thread = threading.Thread(target=some_callback, args=("some text"))
2
_thread.start()
3
The error that I get is “some_callback
is never awaited”.
Any ideas how can I solve this problem?
Advertisement
Answer
You can do it by adding function between to execute async:
JavaScript
14
1
async def some_callback(args):
2
await some_function()
3
4
def between_callback(args):
5
loop = asyncio.new_event_loop()
6
asyncio.set_event_loop(loop)
7
8
loop.run_until_complete(some_callback(args))
9
loop.close()
10
11
_thread = threading.Thread(target=between_callback, args=("some text"))
12
_thread.start()
13
14