libthread: add threadmaybackground
Programs that want to background themselves now need to define threadmaybackground returning 1. This avoids a confusing (to people and debuggers) extra parent process for all the threaded programs that will never want to background themselves.
This commit is contained in:
parent
5b37d91264
commit
b3a20a96eb
19 changed files with 120 additions and 21 deletions
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef _THREAD_H_
|
||||
#define _THREAD_H_ 1
|
||||
#if defined(__cplusplus)
|
||||
extern "C" {
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
AUTOLIB(thread)
|
||||
|
|
@ -15,6 +15,7 @@ void threadexits(char *);
|
|||
void threadexitsall(char *);
|
||||
void threadsetname(char*, ...);
|
||||
void threadsetstate(char*, ...);
|
||||
void threadneedbackground(void);
|
||||
char *threadgetname(void);
|
||||
int threadyield(void);
|
||||
int threadidle(void);
|
||||
|
|
@ -60,6 +61,8 @@ void **threaddata(void);
|
|||
void threadmain(int argc, char *argv[]);
|
||||
extern int mainstacksize;
|
||||
|
||||
int threadmaybackground(void);
|
||||
|
||||
/*
|
||||
* channel communication
|
||||
*/
|
||||
|
|
@ -180,7 +183,7 @@ int threadspawnl(int[3], char*, ...);
|
|||
Channel* threadwaitchan(void);
|
||||
|
||||
/*
|
||||
* alternate interface to threadwaitchan - don't use both!
|
||||
* alternate interface to threadwaitchan - don't use both!
|
||||
*/
|
||||
Waitmsg* procwait(int pid);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue