Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
OpenWalnut Core OpenWalnut Core
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 82
    • Issues 82
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenWalnut
  • OpenWalnut CoreOpenWalnut Core
  • Issues
  • #746

Closed
Open
Created Aug 23, 2022 by Robin Eschbach@eschbachMaintainer

Cleanup and deletion of crashed modules

Currently, crashed modules are non-deletable due to the problem of their thread crashing and thus no cleanup happening / memory getting stuck in there (This is as far as I remember the reason).

Stack memory should be cleaned up automatically.
Heap memory is normally in the form of shared_ptr, unique_ptr or ref_ptr which clean themselves up after the module is deleted / when reference counter = zero.

So the only problem are the things that the module adds to the scene and to other lists in the main program.

Since the exceptions are caught by the underlying WThreadedRunner (see handleDeadlyException method), it is possible to call a cleanup method for those runners and thus also the modules.

This should make crashed modules deletable (At least those that implement the cleanup).

Edited Aug 23, 2022 by Robin Eschbach
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking