Diploma emitido por FUNDAE
+ Ampliar
🔍 Buscar curso
+5.000 cursos disponibles
Calendario: Flexible.
Fecha disponible: Inmediata.
Porcentaje de Bonificación: 100%
Diploma acreditativo emitido por FUNDAE.
Certificado acreditativo para concursos y oposiciones.
Temario Personalizado.
Modalidades: teleformación, aula virtual y MIXTA
| La duración del curso de Programación paralela en Python para optimización de código es de 50 horas,
acreditadas en el Diploma del mismo. PLAZO DE REALIZACIÓN: El plazo se puede establecer según las necesidades del alumno o del plan de formación de la empresa. |
| Este curso puede ser bonificado al 100% para la empresa receptora, incluso aunque esta tenga un porcentaje de copago en razón de su número de empleados en plantilla. El coste de la formación se recuperará
mediante descuento en el pago de los seguros sociales. |
Este descuento será aplicable libremente en cualquier mes del año posterior a la fecha en que haya finalizado la formación. Podrán bonificarse las matrículas de aquellos alumnos que realicen al menos el
75% del curso con éxito. |
| EN CURSOS ONLINE Teleformación: En esta modalidad todo el curso se realiza a través de internet, con acceso las 24 hs. todos los días de la semana y plazo máximo de seis meses. No hay actividades como clases a las que el alumno deba asistir en horarios y fechas programados. Aula virtual: En esta modalidad la formación se imparte mediante clases en directo a través de internet, es decir clases tele-presenciales, que se llevarán a cabo a través de ZOOM, Skype u otra herramienta a convenir. Modalidad MIXTA: Combinación de las dos modalidades anteriores. Los trabajadores asisten a clases en directo (por ejemplo una a la semana) y entre clases disponen de material para avanzar en el curso en la plataforma. Es la más completa para grupos de trabajadores que realizan un mismo curso. EN CURSOS PRESENCIALES o SEMI - PRESENCIALES En esta modalidad los trabajadores realizan el curso asistiendo físicamente a un aula en la que se imparte la formación. Puede ser complementada igualmente con acceso a una plataforma online entre clases. Para esta modalidad se requiere una consulta previa de disponibilidad en la ciudad donde se desee llevar a cabo. |
NOTA:
Trabajamos con la metodologia de curso personalizado, creada por Ciberaula en 1997. Usted puede solicitar un curso a la medida de sus objetivos, que combine lecciones de 2 o mas cursos en un plan de formacion a su medida. Si este es su caso consultenos, esta metodologia ofrece un aprovechamiento maximo de la formacion en los cursos bonificados para trabajadores.
El temario predefinido del curso online de Programación paralela en Python para optimización de código es el siguiente:
1 Introducción al curso
1.1 Introducción
1.2 Requisitos
1.3 Presentación Personal y Bienvenida
1.4 Valoraciones Tempranas en Udemy
1.5 Aprende a Utilizar las Herramientas de Udemy
1.6 Preguntas Frecuentes y Solución de Problemas
2 Instalando nuestras herramientas de trabajo
2.1 Guía para Instalar Python Usando Anaconda
2.2 Funcionalidades de Anaconda
2.3 Entornos Virtuales y Versiones de Python
2.4 Instalación de Librerías
2.5 Recursos del Curso
3 Concepto de procesamiento en paralelo
3.1 Cómputo Paralelo
3.2 Cómputo Paralelo en Python
3.3 Beneficios y Desafíos de la Computación Paralela
4 Hilos (Threads) y procesos en Python
4.1 Codificando Nuestro Primer Hilo (Thread)
4.2 Dominando Hilos (Threads) en Python
4.3 Hilos (Threads) Daemon
4.4 Crear Nuestro Primer Proceso
4.5 Dominando Procesos en Python
4.6 Procesos Daemon
4.7 Perspectiva General
4.8 Examen Rápido de Hilos y Procesos
5 Unión Hilos (Threads) y Procesos
5.1 Funcionalidad de Unión (Join)
5.2 Unión en Hilos (Threads)
5.3 Unión en Procesos
5.4 Examen Rápido de la Unión de los Hilos (Threads) y Procesos
6 Finalización Forzada de Hilos (Threads) y Procesos
6.1 Importancia de una Finalización Forzada
6.2 Finalizando Forzadamente un Hilo (Thread)
6.3 Finalizando Forzadamente un Proceso
6.4 Evita Pérdida de Información
6.5 Examen Rápido sobre la Finalización Forzada
7 Temporizador de Código
7.1 Temporizadores
7.2 Temporizando Hilos (Threads)
7.3 Temporizando Procesos
7.4 Examen Rápido de Temporizadores
8 Sincronización de Datos - Memoria Compartida entre Hilos (Threads)
8.1 Memoria Compartida
8.2 Sincronización con Lock
8.3 Correcta Estructura
8.4 Bloqueo Recursivo con RLock
8.5 Examen Rápido
9 Sincronización de Datos - Memoria Compartida entre Procesos
9.1 Memoria Compartida entre Distintos Procesos
9.2 Variedad de Objetos de Memoria Compartida
9.3 Sincronización Exitosa entre Procesos
9.4 Bloqueo Recursivo en Procesos
9.5 Examen Rápido de Memoria Compartida entre Procesos
10 Grupos de Ejecución
10.1 Ejecutor de Tareas Múltiples
10.2 Ejecución en Conjunto con ThreadPool
10.3 Ejecución Múltiple con ProcessPool
11 Comunicación en Paralelo con Eventos
11.1 Eventos en Python
11.2 Eventos en Hilos (Threads)
11.3 Dominando Eventos en Hilos (Threads)
11.4 Eventos en Procesos
11.5 Dominando Eventos en Procesos
11.6 Examen Rápido del uso de los Eventos
12 Sincronización con Objetos Condicionales
12.1 Introducción a los Objetos Condicionales
12.2 Condicionales en Hilos (Threads)
12.3 Dominando objetos Condicionales en Hilos (Threads)
12.4 Condicionales en Procesos
12.5 Dominando objetos Condicionales en Procesos
12.6 Examen Rápido de los Objetos Condicionales
13 Sincronización con Objetos Barrera
13.1 Objetos Barrera en Python
13.2 Barreras en Hilos (Threads)
13.3 Barreras en Procesos
13.4 Combinación Eficiente
13.5 Examen Rápido
14 Sincronización con Objetos Semáforos
14.1 Optimización de Recursos con Semáforos
14.2 Semáforos en Hilos (Threads)
14.3 Semáforos Limitados en Hilos (Threads)
14.4 Semáforos en Procesos
14.5 Semáforos Limitados en Procesos
14.6 Examen Rápido
15 Comunicación Segura entre Hilos (Threads)
15.1 Comunicación Efectiva
15.2 Estructura Simple
15.3 Estructura FIFO
15.4 Estructura LIFO
15.5 Estructura de Prioridad
15.6 Examen Rápido de Comunicación Segura entre Hilos
16 Comunicación Segura entre Procesos
16.1 Comunicación Efectiva
16.2 Estructura Simple
16.3 Estructura FIFO
16.4 Estructura Unible
16.5 Comunicación Bidireccional
16.6 Examen Rápido
17 Bloqueo Mutuo en Python
17.1 Bloqueo Mutuo en el Desarrollo de Código
17.2 Implementación Errónea de Código
17.3 Dificultad Detectando Bloqueos Mutuos
18 Estructura Eficiente en Código
18.1 Estructura, Diseño y Lógica en Nuestro Código
18.2 Eficiencia en Ejecución
19 Proyecto Final Explicación
19.1 Desarrollo Teórico
20 Proyecto Final - Implementación
20.1 Aviso Legal
20.2 Implementación Proyecto
21 Final del Curso
21.1 Agradecimiento y Despedida
21.2 Continúa tu Crecimiento
22 Apéndice y Fundamentos de Python
22.1 ¿Qué es Python y Por qué Utilizarlo?
22.2 Tipos de Datos
22.3 Listas
22.4 Tuplas
22.5 Conjuntos
22.6 Diccionarios
22.7 Funciones
22.8 Clases
22.9 Sentencias Condicionales
22.10 Bucles
22.11 Gráficos de Visualización
22.12 Excepción de Errores
threading, multiprocessing, concurrent.futures) forman parte de la biblioteca estándar de Python: no hay que instalar nada de pago.A lo largo del curso construyes piezas funcionales que puedes reutilizar directamente en proyectos reales. Estos son los ejercicios más representativos:
ProcessPool para aplicar transformaciones a un lote de ficheros aprovechando todos los núcleos de la CPU. Caso de uso: pipelines de datos, preprocesado en ciencia de datos.Lock, RLock y semáforos. Caso de uso: cualquier aplicación con base de datos o fichero compartido entre varios hilos.Barrier para garantizar que todos los procesos terminen cada etapa antes de continuar. Caso de uso: análisis científico por lotes, agregación de métricas en tiempo real.Estos son los errores que aparecen con más frecuencia al empezar con concurrencia en Python. Identificarlos antes te ahorrará horas de depuración:
threading.Lock() o usa tipos thread-safe como queue.Queue.multiprocessing o concurrent.futures.ProcessPoolExecutor para ese caso.join() en hilos o procesos: el programa principal termina antes de que los workers acaben, cortando su ejecución sin aviso. Llama siempre a t.join() o usa el bloque with del executor.RLock cuando el mismo hilo necesita re-adquirir el lock.ProcessPool con un tamaño razonable (típicamente igual al número de núcleos).if __name__ == "__main__": en Windows: sin él, cada proceso hijo intenta re-ejecutar el módulo principal y el programa entra en un bucle de creación infinita de procesos.multiprocessing serializa los datos con pickle; lambdas, conexiones de BD abiertas o sockets no son serializables y provocan errores crípticos. Crea estos recursos dentro del proceso hijo.time.sleep() como mecanismo de sincronización: asumir que un hilo habrá terminado tras N segundos es frágil. Usa Event, Barrier o join() para sincronización explícita y determinista.Recursos gratuitos que complementan directamente el contenido del curso y te servirán más allá de él:
threading: Lock, RLock, Event, Condition, Semaphore, Barrier, Timer.multiprocessing: Process, Pool, Queue, Pipe, Manager y memoria compartida.if __name__ == "__main__": con Pool y join: lo usarás en cada ejercicio de multiprocessing..gitignore correcto para proyectos Python en segundos.[python] + [multithreading] o [multiprocessing]; la mayoría de errores clásicos ya están resueltos.threading, multiprocessing y asyncio que complementan el temario con ejemplos alternativos.Artículos publicados sobre Programación paralela en Python para optimización de código
|
Por Ana Maria Gonzalez
Computación Paralela en Python: Acelerando el Rendimiento de Aplicaciones La programación paralela se ha convertido en una herramienta esencial para optimizar el rendimiento de aplicaciones en entornos complejos. Mediante el uso de hilos y procesos, los desarrolladores pueden distribuir tareas de manera simultánea, reduciendo significativamente los tiempos de ejecución y mejorando la eficiencia de los sistemas. En 2025, esta técnica es clave para gestionar aplicaciones de gran escala y sistemas de computación científica. La implementación de memoria compartida y estructuras de sincronización como semaforos y barreras permite a los programadores controlar el acceso concurrente a recursos críticos. Esto resulta fundamental para evitar errores de condiciones de carrera y bloqueos que podrían comprometer la estabilidad de aplicaciones empresariales y proyectos de ciencia de datos. En la práctica, empresas que manejan grandes volúmenes de datos pueden beneficiarse de la computación concurrente para acelerar procesos de análisis y modelado predictivo. Por ejemplo, un equipo de científicos de datos puede procesar simultáneamente múltiples conjuntos de información, logrando resultados más rápidos y precisos para la toma de decisiones estratégicas. Además, la programación paralela en Python impulsa la creación de aplicaciones escalables y eficientes en sectores como finanzas, logística y tecnología. El dominio de estas técnicas permite a los desarrolladores diseñar sistemas capaces de adaptarse a la creciente demanda de procesamiento de información, consolidando la competitividad de las empresas en un mercado digital cada vez más exigente. |
|---|
Formación bonificada online para empresas. Ayudamos a equipos a ganar productividad con formación realmente aprovechable.
Somos una empresa de formación bonificada especializada en formación online en sus diferentes modalidades: teleformación, aula virtual y formación mixta.
Ayudamos a nuestros clientes a alcanzar una mayor productividad mediante acciones formativas ajustadas a sus necesidades reales.
Formación que transforma equipos. Nos esforzamos por aportar valor: diseñamos itinerarios con objetivos concretos de negocio, medimos la finalización real, y acompañamos a cada alumno hasta el final. Por eso el 95% de quienes empiezan, terminan.