Escolar Documentos
Profissional Documentos
Cultura Documentos
DE SOFTWARE BÁSICO EM C
Aula 6 – PROCESSOS E THREADS
Universidade Estácio de Sá
Prof. Simone Gama
simone.gama@estacio.br
Processos – Definição
O que são processos?
Processo é um programa em execução.
Diferente dos processos, que são mais usados para executar coisas
diferentes, programas diferentes, as threads são 'programinhas' que são
executados de forma pseudo-paralela, de modo que o trabalho dessas
threads formem o trabalho maior, de rodar um programa.
exit()
Finaliza o processo com um status de saída.
wait()
O pai pode usar wait() para suspender a execução
até que um filho termine. Usando wait() , o pai
pode obter o status de saída de um filho encerrado.
2𝑛 processos ou
2𝑛 − 1 processos filhos
Prof. Simone PROG SOFTWARE BÁSICO EM C 15
Gama
Processos x Threads
• Se implementadas corretamente, as threads tem vantagens
sobre os processos, uma vez que os fork() tem mais
overhead do que threads.
Resultado:
1.Hello from Child!
Hello from Parent!
(ou)
2. Quantos processos
filhos são executados
no código?
Prof. Simone PROG SOFTWARE BÁSICO EM C 22
Gama
Processos em Linguagem C – Fork()
Processos com fork() – Exemplo 3:
(ou)
Child has x = 2
Parent has x = 0
Bibliografia Auxiliar
• Tutorial completo em C (em inglês): C Programming Tutorial
(markburgess.org)
• Processos e Threads:
• Aula 10.3 Programacao de Software Basico.mp4 - Google Drive
• fork() in C - GeeksforGeeks