You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As you correctly stated, @felixkol, when creating a second project, the previous one is not freed as expected, causing the internal marker server to continue publishing keep-alive messages. This is probably due to circular references.
I tried to explicitly call python's garbage collector via gc.collect(), which cleans dangling circular references. However, this triggers a segfault down the line.
I'm afraid that the issue is related to trait-widget bindings. The function trait_widget_binding establishes a bidirectional binding, possibly storing references in both created classes, WidgetTraitBinding and TraitWidgetBinding, like in this toy example.
By the way, why are these classes not stored somehow? Are they just used to establish the binding?
As you correctly stated, @felixkol, when creating a second project, the previous one is not freed as expected, causing the internal marker server to continue publishing keep-alive messages. This is probably due to circular references.
I tried to explicitly call python's garbage collector via
gc.collect()
, which cleans dangling circular references. However, this triggers a segfault down the line.I'm afraid that the issue is related to trait-widget bindings. The function
trait_widget_binding
establishes a bidirectional binding, possibly storing references in both created classes,WidgetTraitBinding
andTraitWidgetBinding
, like in this toy example.By the way, why are these classes not stored somehow? Are they just used to establish the binding?
stack_of_tasks/python/stack_of_tasks/ui/traits_mapping/bindings.py
Lines 136 to 137 in 2695a5f
Here, the
Logic_Project
is passed totrait_widget_binding
:stack_of_tasks/python/stack_of_tasks/ui/application.py
Lines 321 to 326 in 2695a5f
The text was updated successfully, but these errors were encountered: