Pasos de operación de subprocesos múltiples en lenguaje C
Creación de hilo
Prototipo de función: intpthread_create(pthread_t*restrict tidp, const pthread_attr_t *restrict attr, void *(*start_rtn)(void), void *restrict arg); p> p>
Valor de retorno: si el hilo se establece correctamente, se devuelve 0; de lo contrario, se devuelve un número de error.
Parámetros formales: pthread_t*restringir el puntero de identificación del subproceso tidp del subproceso que se creará; const pthread_attr_t *restringir el atributo del subproceso attr al crear el subproceso void *(start_rtn)(void) el valor de retorno es un puntero de; Función de tipo vacío; parámetro formal de vacío *restrict arg start_rtn.
Suspensión de hilo: La función de esta función hace que el hilo actual se suspenda y espere a que regrese otro hilo antes de continuar con la ejecución. Es decir, cuando el programa se ejecuta en este lugar, el programa se detendrá primero y luego esperará a que regrese el hilo con el ID del hilo, y luego el programa se ejecutará de forma intermitente.
Prototipo de función: intpthread_join(pthread_tthread, void **value_ptr);
La descripción del parámetro es la siguiente: el hilo está esperando el número de hilo del hilo de salida value_ptr es el retorno; valor del hilo de salida.
Valor de retorno: si tiene éxito, devuelve 0; si falla, devuelve el número de error.
Salida del hilo
Prototipo de función: voidpthread_exit(void *rval_ptr);
Obtener el ID del hilo actual
Prototipo de función: pthread_tpthread_self( void );
Bloqueo Mutex
Crear pthread_mutex_init; destruir pthread_mutex_destroy; bloquear pthread_mutex_lock;
Bloqueo condicional
Crear pthread_cond_init; destruir pthread_cond_destroy; activar pthread_cond_signal; transmitir pthread_cond_broadcast;