Informática, perguntado por denisgabralgomes6, 1 mês atrás

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.

Soluções para a tarefa

Respondido por patrick1885
12

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:

Respondido por Juansevcik
1

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)

  • É a unidade básica de execução de qualquer sistema operacional, todo programa que é feito consiste em pelo menos uma thread.
  • É um aplicativo que permite fazer várias coisas simultaneamente, ou seja, realizar várias tarefas simultaneamente.
  • É um thread ou sub-rotina de um programa, executado simultaneamente com o programa chamador.
  • Eles são uma extensão do conceito de multitarefa.
  • O Threads compartilham espaço de memória entre si.

Saiba mais sobre processos e threads aqui:

brainly.com.br/tarefa/24759540

#SPJ2

Anexos:
Perguntas interessantes