multithreading

потоки должны начинаться с той же доли секунды. Я понимаю, если вы делаете thread1.start(), Это займет несколько миллисекунд до следующего исполнения thread2.start(). это вообще возможно или невозможно?...

Я был поднят, чтобы полагать, что если несколько потоков могут получить доступ к переменной, то все чтения и записи в эту переменную должны быть защищены кодом синхронизации, таким как оператор "lock", потому что процессор может переключиться на другой поток на полпути через запись. однако, я смотрел через с...

У меня есть приложение, которое обновляет мой datagrid каждый раз, когда файл журнала, который я смотрю, обновляется (добавляется с новым текстом) следующим образом: private void DGAddRow(string name, FunctionType ft) { ASCIIEncoding ascii = new ASCIIEncoding(); CommDGDataSource ds =...

Я использую экземпляр ManualResetEvent для управления доступом потока к ресурсу, но я сталкиваюсь с проблемами с ним. Кто-нибудь знает как я могу узнать во время отладки, каково состояние объекта? то есть я хотел бы знать, если ManualResetEvent в настоящее время блокирует любые потоки и, возможно, даже скол...

у меня есть один потоковый производитель, который создает некоторые объекты задачи, которые затем добавляются в ArrayBlockingQueue (который имеет фиксированный размер). Я также запускаю многопоточный потребитель. Это сборка в виде фиксированного пула потоков (Executors.newFixedThreadPool(threadCount);). Зате...

теперь, когда C++11 имеет многопоточность, мне было интересно, Как правильно реализовать ленивый инициализированный синглтон без использования мьютексов (по причинам perf). Я придумал это, но tbh Im не очень хорошо пишет код lockfree, поэтому я ищу некоторые лучшие решения. // ConsoleApplication1.cpp : Defin...

в кодовой базе, которую я рассмотрел, я нашел следующую идиому. void notify(struct actor_t act) { write(act.pipe, "M", 1); } // thread A sending data to thread B void send(byte *data) { global.data = data; notify(threadB); } // in thread B event loop read(this.sock, &cmd, 1); switch (cmd) { ...

Я недавно начал программировать в WPF и столкнулся со следующей проблемой. Я не понимаю, как использовать Dispatcher.Invoke() метод. У меня есть опыт работы с потоками, и я сделал несколько простых программ Windows Forms, где я просто использовал Control.CheckForIllegalCrossThreadCalls = false; Да, я знаю,...

Как я могу увидеть количество потоков в процессе Java? ...

Если у меня есть поток в бесконечном цикле, есть ли способ завершить его, когда основная программа заканчивается (например, когда я нажимаю Ctrl+C)?...