41 lines
741 B
Python
41 lines
741 B
Python
import trio
|
|
import tractor
|
|
|
|
|
|
@tractor.context
|
|
async def just_sleep(
|
|
|
|
ctx: tractor.Context,
|
|
**kwargs,
|
|
|
|
) -> None:
|
|
'''
|
|
Start and sleep.
|
|
|
|
'''
|
|
await ctx.started()
|
|
await trio.sleep_forever()
|
|
|
|
|
|
async def main() -> None:
|
|
|
|
async with tractor.open_nursery(
|
|
debug_mode=True,
|
|
) as n:
|
|
portal = await n.start_actor(
|
|
'ctx_child',
|
|
|
|
# XXX: we don't enable the current module in order
|
|
# to trigger `ModuleNotFound`.
|
|
enable_modules=[],
|
|
)
|
|
|
|
async with portal.open_context(
|
|
just_sleep, # taken from pytest parameterization
|
|
) as (ctx, sent):
|
|
raise KeyboardInterrupt
|
|
|
|
|
|
if __name__ == '__main__':
|
|
trio.run(main)
|