Trabalhem juntos para criar e crescer juntos! Este é o 19º dia da minha participação no "Nuggets Daily New Plan · August Update Challenge", clique para ver os detalhes do evento
Seguindo o artigo anterior, vamos falar sobre grupos de threads
Construtor de grupo de threads
Vejamos este grupo de threads. O nome do grupo de threads é system, defina a prioridade e especifique que o thread pai está vazio. Pode-se ver que este é o grupo de threads raiz. Este método é privado e não chamado para nós.
Adicione o thread atual ao grupo de threads
Vamos tentar a lógica do código acima. A propósito, se o grupo de threads não for especificado, junte-se ao grupo de threads do thread principal atualmente criado. Se o grupo de threads especificado for o grupo de threads atual.
Nós olhamos para o código-fonte é o mesmo:
O número de threads ativos e grupos de threads ativos são ambos 0:
Nós não iniciamos threads, então precisamos iniciar threads. Aqui vemos o número de threads ativos:
Por que iniciar o segmento, pode ser contado?
Vejamos o código-fonte, aqui está o grupo de threads adicionado após o início do thread:
Em seguida, inicie o thread mais mais, não inicie o thread menos menos.
Pode haver um grupo de threads em um grupo de threads?
Vamos experimentar, acabamos de adicionar um grupo de subtópicos da seguinte forma:
Neste momento, podemos ver que também há um grupo de threads sob o grupo de threads.
Ou seja, o grupo de threads pode ser um thread ou um grupo de threads.
Vamos dar uma olhada no grupo de threads do thread principal, o código é o seguinte:
O grupo de threads do thread principal ainda é main, e o grupo de threads pai do thread principal é o que chamamos de sistema Este grupo de threads raiz pode ter threads filhos e grupos de threads filhos abaixo, e assim por diante.