Perguntas com a marcação «multithreading»

Multiencadeamento é a capacidade de um computador ou programa executar trabalhos simultaneamente ou de forma assíncrona, utilizando vários fluxos simultâneos de execução (geralmente chamados de encadeamentos).







8
Por que o Thread.Sleep é tão prejudicial
Costumo ver mencionado que Thread.Sleep();não deve ser usado, mas não consigo entender por que isso acontece. Se Thread.Sleep();puder causar problemas, existem soluções alternativas com o mesmo resultado que seriam seguras? por exemplo. while(true) { doSomework(); i++; Thread.Sleep(5000); } outro é: while (true) { string[] images = Directory.GetFiles(@"C:\Dir", "*.png"); foreach (string …
128 c#  multithreading  sleep 

15
Quando usar o pool de threads em C #? [fechadas]
Fechado . Esta questão é baseada em opiniões . No momento, não está aceitando respostas. Deseja melhorar esta pergunta? Atualize a pergunta para que ela possa ser respondida com fatos e citações editando esta postagem . Fechado há 2 anos . Melhore esta pergunta Eu tenho tentado aprender a programação …


13
Impossível criar um pool de encadeamentos em cache com um limite de tamanho?
Parece ser impossível criar um pool de threads em cache com um limite para o número de threads que ele pode criar. Aqui está como Executors.newCachedThreadPool estático é implementado na biblioteca Java padrão: public static ExecutorService newCachedThreadPool() { return new ThreadPoolExecutor(0, Integer.MAX_VALUE, 60L, TimeUnit.SECONDS, new SynchronousQueue<Runnable>()); } Portanto, usando esse …

12
Como saber se outros tópicos terminaram?
Eu tenho um objeto com um método chamado StartDownload(), que inicia três threads. Como recebo uma notificação quando cada thread termina a execução? Existe uma maneira de saber se um (ou todos) do thread está concluído ou ainda está em execução?



3
Diferença entre dispatch_async e dispatch_sync na fila serial?
Eu criei uma fila serial como esta: dispatch_queue_t _serialQueue = dispatch_queue_create("com.example.name", DISPATCH_QUEUE_SERIAL); Qual é a diferença entre dispatch_asyncchamado assim dispatch_async(_serialQueue, ^{ /* TASK 1 */ }); dispatch_async(_serialQueue, ^{ /* TASK 2 */ }); E dispatch_syncchamou assim nesta fila de série? dispatch_sync(_serialQueue, ^{ /* TASK 1 */ }); dispatch_sync(_serialQueue, ^{ /* …

18
Como esperar que um BackgroundWorker cancele?
Considere um método hipotético de um objeto que faz coisas para você: public class DoesStuff { BackgroundWorker _worker = new BackgroundWorker(); ... public void CancelDoingStuff() { _worker.CancelAsync(); //todo: Figure out a way to wait for BackgroundWorker to be cancelled. } } Como alguém pode esperar que um BackgroundWorker seja executado? …

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.