Avoid tracking tasks that finish right away (#111690)
This commit is contained in:
parent
470d121f5c
commit
b9718fe2e9
2 changed files with 8 additions and 0 deletions
|
@ -929,6 +929,8 @@ class ConfigEntry:
|
|||
task = hass.async_create_task(
|
||||
target, f"{name} {self.title} {self.domain} {self.entry_id}", eager_start
|
||||
)
|
||||
if task.done():
|
||||
return task
|
||||
self._tasks.add(task)
|
||||
task.add_done_callback(self._tasks.remove)
|
||||
|
||||
|
@ -949,6 +951,8 @@ class ConfigEntry:
|
|||
target: target to call.
|
||||
"""
|
||||
task = hass.async_create_background_task(target, name, eager_start)
|
||||
if task.done():
|
||||
return task
|
||||
self._background_tasks.add(task)
|
||||
task.add_done_callback(self._background_tasks.remove)
|
||||
return task
|
||||
|
|
|
@ -637,6 +637,8 @@ class HomeAssistant:
|
|||
"""
|
||||
if eager_start:
|
||||
task = create_eager_task(target, name=name, loop=self.loop)
|
||||
if task.done():
|
||||
return task
|
||||
else:
|
||||
task = self.loop.create_task(target, name=name)
|
||||
self._tasks.add(task)
|
||||
|
@ -657,6 +659,8 @@ class HomeAssistant:
|
|||
"""
|
||||
if eager_start:
|
||||
task = create_eager_task(target, name=name, loop=self.loop)
|
||||
if task.done():
|
||||
return task
|
||||
else:
|
||||
task = self.loop.create_task(target, name=name)
|
||||
self._background_tasks.add(task)
|
||||
|
|
Loading…
Add table
Reference in a new issue