Sponsored Content
Full Discussion: Pthread_create issue
Top Forums Programming Pthread_create issue Post 302196668 by Franklin52 on Monday 19th of May 2008 06:58:28 AM
Old 05-19-2008
- First, enable the warning to see if you get some usefull messages.
- Declare enough elements for arr[] as used for the functions manufacturers and consumer.
- The 3th parameter should be an address of the thread function:

Code:
status = pthread_create(&manufacturer_thread, NULL, &manufacturer, NULL);
status = pthread_create(&consumer_thread, NULL, &consumer, NULL);

instead of:

Code:
status = pthread_create(&manufacturer_thread, NULL, manufacturer, NULL);
status = pthread_create(&consumer_thread, NULL, consumer, NULL);

Regards
 

9 More Discussions You Might Find Interesting

1. Programming

pthread_create problem

Here is simple code for multithreading in POSIX: void* simplethread(void* arg) { printf("Hello World\n"); } int main(void) { pthread_t id; pthread_create(&id, NULL, simplethread, NULL); return 0; } Whether the new thread will run or not depends on the OS. Tricky ... (5 Replies)
Discussion started by: _rocky
5 Replies

2. Programming

unresolve pthread_create etc

how to do with that? after cc -o xxxx xxxx.c ld: Unresolved: _pthread_create _pthread_deteach _pthread_exit Thanks (3 Replies)
Discussion started by: zhshqzyc
3 Replies

3. Programming

pthread_create and scope usage

I have a problem with a C multi-threaded program I am writing. I cannot figure out how to keep the unique key value at the thread level. I wrote a program in C that forked a bunch of processes and then decided to convert it to threads and I can't keep the key unique to each thread. In a nutshell... (3 Replies)
Discussion started by: jenmead
3 Replies

4. Programming

How Can I use pthread_create ?

Hi. I use C++ and I wishes to create a thread with the pthread_create function, my question is, how can I do this if I wish that the function will be a member of the class ?? I know from windows programming that I can declare a static function like this static unsigned int __stdcall... (7 Replies)
Discussion started by: shvalb
7 Replies

5. Solaris

pthread_create failed upon execution

Im trying to run an application i compiled (iperf) and i get an error telling me that it cant create the pthread. when i ran the ./configuration one of the things it checked was for pthreads which came back ok. Im not really sure where to even start to resolve this. i have been unable to find... (5 Replies)
Discussion started by: jrich523
5 Replies

6. Programming

undefined reference to `pthread_create'

Hi guys. H was learning posix threads in C with anjuta IDE. it gives me undefined reference to `pthread_create' I know i should compile it like: gcc -lpthread main.c how should i import this configuration in anjuta so i can compile inside it? (2 Replies)
Discussion started by: majid.merkava
2 Replies

7. Programming

pthread_create

The prototype for pthread_create function is like this:- int pthread_create(pthread_t *thread,pthread_attr_t *attr,void *(*start routine),void *arg); Q.1 .Why the return type of the start_routine must be void*?? Q.2. Why should we pass arg by converting into void * only ?? Thank You (3 Replies)
Discussion started by: sunil_abhay
3 Replies

8. UNIX for Dummies Questions & Answers

Pthread_create problem

Hi, I'm trying to do my homework assignment but I am having trouble using the pthread_create fucntion. Here is my code________________ //Alicia Johnson //sum_pid program //creates n number of threads. These threads create a random number //then adds the number to a global array. Then... (1 Reply)
Discussion started by: ajohns38
1 Replies

9. Programming

fork vs pthread_create

Suppose I have a simple program main() with a global varibale int x=0. int x = 0; main() { print("%d\n",x); } I want to create two threads/process which must access this variable x in sync. Which one will be better threads( pthread_create ) or process( fork )? If I go with fork() then... (1 Reply)
Discussion started by: rupeshkp728
1 Replies
PTHREAD_CREATE(3)					   BSD Library Functions Manual 					 PTHREAD_CREATE(3)

NAME
pthread_create -- create a new thread LIBRARY
POSIX Threads Library (libpthread, -lpthread) SYNOPSIS
#include <pthread.h> int pthread_create(pthread_t * restrict thread, const pthread_attr_t * restrict attr, void *(*start_routine)(void *), void * restrict arg); DESCRIPTION
The pthread_create() function is used to create a new thread, with attributes specified by attr, within a process. If attr is NULL, the default attributes are used. The attributes specified via attr are copied into the new thread. Any subsequent modifications to the attributes object attr points to will have no effect upon already-created threads. It is thus also safe to pass the same attr to multiple calls to pthread_create(). Upon successful completion pthread_create() will store the ID of the created thread in the location specified by thread. The thread is cre- ated executing start_routine with arg as its sole argument. If the start_routine returns, the effect is as if there was an implicit call to pthread_exit() using the return value of start_routine as the exit status. Note that the thread in which main() was originally invoked differs from this. When it returns from main(), the effect is as if there was an implicit call to exit() using the return value of main() as the exit status. The signal state of the new thread is initialized as: o The signal mask is inherited from the creating thread. o The set of signals pending for the new thread is empty. RETURN VALUES
If successful, the pthread_create() function will return zero. Otherwise an error number will be returned to indicate the error. ERRORS
pthread_create() shall fail if: [EAGAIN] The system lacks the necessary resources to create another thread, or the system-imposed limit on the total number of threads in a process PTHREAD_THREADS_MAX would be exceeded. [EINVAL] The value specified by attr is invalid. SEE ALSO
fork(2), pthread_attr(3), pthread_cleanup_pop(3), pthread_cleanup_push(3), pthread_exit(3), pthread_join(3) STANDARDS
The function conforms to IEEE Std 1003.1-2001 (``POSIX.1''). BSD
July 9, 2010 BSD
All times are GMT -4. The time now is 01:48 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy