diff options
author | reinelt <> | 2004-04-08 10:48:25 +0000 |
---|---|---|
committer | reinelt <> | 2004-04-08 10:48:25 +0000 |
commit | 9900b3e929fb0ffa2542637c339fa2c1a59fe648 (patch) | |
tree | 9a63ca7ca5300028f833debc12494b2bd70aacbb /thread.c | |
parent | 5a9afdb1db46913d6e4b46d6a9e38dab4dd09994 (diff) | |
download | lcd4linux-9900b3e929fb0ffa2542637c339fa2c1a59fe648.tar.gz |
[lcd4linux @ 2004-04-08 10:48:23 by reinelt]
finished plugin_exec
modified thread handling
added '%x' format to qprintf (hexadecimal)
Diffstat (limited to '')
-rw-r--r-- | thread.c | 14 |
1 files changed, 10 insertions, 4 deletions
@@ -1,4 +1,4 @@ -/* $Id: thread.c,v 1.2 2004/03/20 07:31:33 reinelt Exp $ +/* $Id: thread.c,v 1.3 2004/04/08 10:48:25 reinelt Exp $ * * thread handling (mutex, shmem, ...) * @@ -26,6 +26,11 @@ * * * $Log: thread.c,v $ + * Revision 1.3 2004/04/08 10:48:25 reinelt + * finished plugin_exec + * modified thread handling + * added '%x' format to qprintf (hexadecimal) + * * Revision 1.2 2004/03/20 07:31:33 reinelt * support for HD66712 (which has a different RAM layout) * further threading development @@ -140,13 +145,14 @@ int shm_create (void **buffer, int size) } -void shm_destroy (int shmid) +void shm_destroy (int shmid, void *buffer) { + shmdt (buffer); shmctl(shmid, IPC_RMID, NULL); } -int thread_create (char *name, void (*thread)(char *name)) +int thread_create (char *name, void (*thread)(void *data), void *data) { pid_t pid, ppid; @@ -158,7 +164,7 @@ int thread_create (char *name, void (*thread)(char *name)) return -1; case 0: info ("thread %s starting...", name); - thread(name); + thread(data); info ("thread %s ended.", name); exit (0); default: |