[Programación] en paralelo

federico luna programacion@lugro.org.ar
Wed, 23 Jun 2004 11:57:15 -0300 (ART)


--- HHDG <cuatriangulo@yahoo.com.ar> escribió: >
Quisiera hacer que N "funciones" o "hilos", no se
> como se dice....,
> se ejecuten en // (paralelo), (con 2 me conformo por
> ahora :))
> No tengo ni idea como implementar esto en lenguaje
> C...
> Hay que hacer alguna invocación misteriosa al
> kernel?, usar alguna librería?
la manera mas estandar es usar la interfaz posix
thread (pthread)
para crear un hilo tenes que llamar a:

int pthread_create (pthread_t *thread, const
pthread_attr_t *attr, void
*(*start_routine) (void), void *arg) ;

> Como se manejan los problemas de concurrencia?, por
> ejemplo como
> hacer que los "procesos" se excluyan cuando acceden
> a una misma variable
> global que comparten...
pthread, te da un par de herramientas para el manejo
de la concurrencia

pthread_mutex_ 	Mutexes
pthread_cond_ 	Condition variables

pthread_mutexattr_ 	Mutex attributes objects.
pthread_condattr_ 	Condition attributes objects

otra manera que tenes de manejar la concurrencia es
con semaforos. pero me parece que no estan el estandar
posix pero estan implementados en las mayoria de los
U*NIX

la manera de lokeo que uses depende de cada caso.


> Se acepta cualquier ayuda al respecto...
google: pthread

> Muchas gracias
> 
> _______________________________________________
> Programacion mailing list
> Programacion@lugro.org.ar
>
http://www.lugro.org.ar/mailman/listinfo/programacion
>  

------------
Internet gratis ¡y que funciona!
Tres nuevas ciudades con números locales: 
Escobar, Zárate y Campana
Yahoo! Conexión
http://ar.online.yahoo.com
¿Qué esperas para navegar bien y a bajo costo?