Joinable threads

Bug #1699229 reported by mdavidsaver
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
EPICS Base
Fix Released
Wishlist
mdavidsaver

Bug Description

It would be nice if the OSI interface for threads supported joining at the C API level (c++ already has epicsThread::exitWait() ). No real functional benefit, but would be helpful for testing with valgrind where currently thread stacks show up as leaked for threads which haven't completely stopped.

I'm assigning this to myself even though I don't have any immediate plans to add this feature.

Revision history for this message
Andrew Johnson (anj) wrote :

VxWorks doesn't have anything like a taskJoin() routine, so implementing this there would require pulling functionality from epicsThread::exitWait() and epicsThreadCallEntryPoint() down into the os/vxWorks/osdThread.c implementation.

Revision history for this message
mdavidsaver (mdavidsaver) wrote :

lp:1730982 is related.

Revision history for this message
mdavidsaver (mdavidsaver) wrote :

FYI. I have done some work on this idea. Enough to have it working for posix and WIN32. I think I know to do this for RTEMS as well, and by extension vxworks. Though I still don't have a firm timetable for doing this.

https://github.com/mdavidsaver/epics-base/tree/thread-join

Andrew Johnson (anj)
Changed in epics-base:
status: Confirmed → In Progress
milestone: none → 7.0.3.1
Andrew Johnson (anj)
Changed in epics-base:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.