mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
bpo-46752: Slight improvements to TaskGroup API (GH-31398)
* Remove task group names (for now) We're not sure that they are needed, and once in the code we would never be able to get rid of them. Yury wrote: > Ideally, there should be a way for someone to build a "trace" > of taskgroups/task leading to the current running task. > We could do that using contextvars, but I'm not sure we should > do that in 3.11. * Pass optional name on to task in create_task() * Remove a bunch of unused stuff
This commit is contained in:
parent
2a38e1ab65
commit
d85121660e
2 changed files with 17 additions and 24 deletions
|
@ -368,10 +368,10 @@ class TestTaskGroup(unittest.IsolatedAsyncioTestCase):
|
|||
raise ValueError(t)
|
||||
|
||||
async def runner():
|
||||
async with taskgroups.TaskGroup(name='g1') as g1:
|
||||
async with taskgroups.TaskGroup() as g1:
|
||||
g1.create_task(crash_after(0.1))
|
||||
|
||||
async with taskgroups.TaskGroup(name='g2') as g2:
|
||||
async with taskgroups.TaskGroup() as g2:
|
||||
g2.create_task(crash_after(0.2))
|
||||
|
||||
r = asyncio.create_task(runner())
|
||||
|
@ -387,10 +387,10 @@ class TestTaskGroup(unittest.IsolatedAsyncioTestCase):
|
|||
raise ValueError(t)
|
||||
|
||||
async def runner():
|
||||
async with taskgroups.TaskGroup(name='g1') as g1:
|
||||
async with taskgroups.TaskGroup() as g1:
|
||||
g1.create_task(crash_after(10))
|
||||
|
||||
async with taskgroups.TaskGroup(name='g2') as g2:
|
||||
async with taskgroups.TaskGroup() as g2:
|
||||
g2.create_task(crash_after(0.1))
|
||||
|
||||
r = asyncio.create_task(runner())
|
||||
|
@ -407,7 +407,7 @@ class TestTaskGroup(unittest.IsolatedAsyncioTestCase):
|
|||
1 / 0
|
||||
|
||||
async def runner():
|
||||
async with taskgroups.TaskGroup(name='g1') as g1:
|
||||
async with taskgroups.TaskGroup() as g1:
|
||||
g1.create_task(crash_soon())
|
||||
try:
|
||||
await asyncio.sleep(10)
|
||||
|
@ -430,7 +430,7 @@ class TestTaskGroup(unittest.IsolatedAsyncioTestCase):
|
|||
1 / 0
|
||||
|
||||
async def nested_runner():
|
||||
async with taskgroups.TaskGroup(name='g1') as g1:
|
||||
async with taskgroups.TaskGroup() as g1:
|
||||
g1.create_task(crash_soon())
|
||||
try:
|
||||
await asyncio.sleep(10)
|
||||
|
@ -692,3 +692,10 @@ class TestTaskGroup(unittest.IsolatedAsyncioTestCase):
|
|||
|
||||
self.assertEqual(get_error_types(cm.exception), {ZeroDivisionError})
|
||||
self.assertGreaterEqual(nhydras, 10)
|
||||
|
||||
async def test_taskgroup_task_name(self):
|
||||
async def coro():
|
||||
await asyncio.sleep(0)
|
||||
async with taskgroups.TaskGroup() as g:
|
||||
t = g.create_task(coro(), name="yolo")
|
||||
self.assertEqual(t.get_name(), "yolo")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue