02) Com o desenvolvimento dos sistemas, surgiu a necessidade de, dentro de um mesmo processo, possuir trechos que executassem concorrentemente , e aí temos o conceito de thread. a) Definição de thread; b) Pesquise os estados das threads; c) Os benefícios da programação multithread; d) Operações de thread.
Com o desenvolvimento dos sistemas, surgiu a necessidade de, dentro de um mesmo processo,
possuir trechos que executassem concorrentemente, e aí temos o conceito de thread.
a) Definição de thread;
ordem de execução, com instruções encadeadas que são desempenhadas uma por vez
b) Pesquise os estados das threads;
NEW - ela foi criada e está pronta para iniciar (start())
RUNNABLE - ela está rodando (não existe o estado RUNNING)
BLOCKED - ela está travada, em geral por Lock ou alguma operação de IO
WAITING - ela está aguardando outra thread para rodar
TIMED_WAITING - a mesma coisa, mas há um limite de tempo que ela esperará
TERMINATED - ela terminou a execução, mas ainda existe (não existe o estado DEAD)
c) Os benefícios da programação multithread;
Capacidade de resposta - o multithreading em um aplicativo interativo pode permitir que um programa continue em execução mesmo se uma parte dele estiver bloqueada ou executando uma operação demorada, aumentando assim a capacidade de resposta ao usuário.
Compartilhamento de recursos A vantagem de compartilhar código e dados é que permite que um aplicativo tenha vários threads de atividade no mesmo espaço de endereço.
Economia alocar memória e recursos para a criação de processos é um trabalho caro em termos de tempo e espaço.
Visto que os encadeamentos compartilham memória com o processo ao qual pertence, é mais econômico criar e alternar encadeamentos de contexto.
Escalabilidade aumentam significativamente no caso de arquitetura de multiprocessador, onde os threads podem ser executados paralelamente em vários processadores. Se houver apenas um thread, não será possível dividir os processos em tarefas menores que diferentes processadores podem executar.
Lista de comentários
Resposta:
Com o desenvolvimento dos sistemas, surgiu a necessidade de, dentro de um mesmo processo,
possuir trechos que executassem concorrentemente, e aí temos o conceito de thread.
a) Definição de thread;
ordem de execução, com instruções encadeadas que são desempenhadas uma por vez
b) Pesquise os estados das threads;
NEW - ela foi criada e está pronta para iniciar (start())
RUNNABLE - ela está rodando (não existe o estado RUNNING)
BLOCKED - ela está travada, em geral por Lock ou alguma operação de IO
WAITING - ela está aguardando outra thread para rodar
TIMED_WAITING - a mesma coisa, mas há um limite de tempo que ela esperará
TERMINATED - ela terminou a execução, mas ainda existe (não existe o estado DEAD)
c) Os benefícios da programação multithread;
Capacidade de resposta - o multithreading em um aplicativo interativo pode permitir que um programa continue em execução mesmo se uma parte dele estiver bloqueada ou executando uma operação demorada, aumentando assim a capacidade de resposta ao usuário.
Compartilhamento de recursos A vantagem de compartilhar código e dados é que permite que um aplicativo tenha vários threads de atividade no mesmo espaço de endereço.
Economia alocar memória e recursos para a criação de processos é um trabalho caro em termos de tempo e espaço.
Visto que os encadeamentos compartilham memória com o processo ao qual pertence, é mais econômico criar e alternar encadeamentos de contexto.
Escalabilidade aumentam significativamente no caso de arquitetura de multiprocessador, onde os threads podem ser executados paralelamente em vários processadores. Se houver apenas um thread, não será possível dividir os processos em tarefas menores que diferentes processadores podem executar.
d) Operações de thread.
criar, terminar, thread join e thread
Explicação:
A necessidade que surgiu de ter seções que executassem concorrentemente dentro do mesmo processo é a definição de thread, opção a.
O thread de execução (Thread)
Saiba mais sobre processos e threads aqui:
brainly.com.br/tarefa/24759540
#SPJ2