Вопросы с тегом «blocking»


5
Насколько эффективна блокировка разблокированного мьютекса? Какова стоимость мьютекса?
На низкоуровневом языке (C, C ++ или любой другой): у меня есть выбор между наличием нескольких мьютексов (например, что дает мне pthread или того, что предоставляет нативная системная библиотека) или одного для объекта. Насколько эффективно блокировать мьютекс? Т.е. сколько там ассемблерных инструкций и сколько времени они занимают (в случае, если …

9
Как я могу прервать прием метода ServerSocket accept ()?
В моем основном потоке у меня есть while(listening)цикл, который вызывает accept()мой объект ServerSocket, затем запускает новый клиентский поток и добавляет его в коллекцию, когда новый клиент принят. У меня также есть поток администратора, который я хочу использовать для выдачи команд, таких как «выход», которые приведут к завершению работы всех клиентских …

9
Действительно ли неблокирующий ввод-вывод быстрее, чем многопоточный блокирующий ввод-вывод? Как?
Я поискал в Интернете некоторые технические подробности о блокировании ввода-вывода и неблокирующем вводе-выводе, и я нашел несколько человек, утверждающих, что неблокирующий ввод-вывод будет быстрее, чем блокирующий ввод-вывод. Например в этом документе . Если я использую блокирующий ввод-вывод, то, конечно, поток, который в настоящее время заблокирован, не может делать ничего другого …

5
В чем разница между: асинхронной, неблокирующей и событийной архитектурой?
Какая разница между: Асинхронный , Неблокирующий и Архитектуры на базе событий ? Может ли что-то быть как асинхронным, так и неблокирующим (и основанным на событиях )? Что важнее всего в программировании, чтобы что-то было: асинхронное, неблокирующее и / или событийная (или все 3)? Если бы вы могли привести примеры, это …

6
Как прервать BlockingQueue, который блокирует take ()?
У меня есть класс, который берет объекты из a BlockingQueueи обрабатывает их, вызывая take()в непрерывном цикле. В какой-то момент я знаю, что больше никаких объектов в очередь не будет. Как мне прервать take()метод, чтобы он перестал блокироваться? Вот класс, обрабатывающий объекты: public class MyObjHandler implements Runnable { private final BlockingQueue<MyObj> …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.