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

95
Распространяются ли статические переменные между потоками?

Мой учитель в классе Java верхнего уровня по многопоточности сказал то, в чем я не был уверен. Он заявил, что следующий код не обязательно обновит readyпеременную. По его словам, два потока не обязательно совместно используют статическую переменную, особенно в том случае, когда каждый поток...

94
Есть ли ExecutorService, который использует текущий поток?

Мне нужен совместимый способ настроить использование пула потоков или нет. В идеале остальная часть кода вообще не должна подвергаться влиянию. Я мог бы использовать пул потоков с одним потоком, но это не совсем то, что я хочу. Любые идеи? ExecutorService es = threads == 0 ? new...

93
Каковы варианты использования scala.concurrent.Promise?

Я читаю SIP-14, и концепция Futureимеет смысл и проста для понимания. Но есть два вопроса Promise: SIP говорит Depending on the implementation, it may be the case that p.future == p. Как это может быть? Есть два разных типа, Futureа Promiseне два? Когда мы должны использовать Promise? Пример...

93
как узнать, что НЕ является потокобезопасным в Ruby?

начиная с Rails 4 , по умолчанию все должно работать в многопоточном окружении. Это означает, что весь код, который мы пишем, И ВСЕ используемые драгоценные камни должны бытьthreadsafe Итак, у меня есть несколько вопросов по этому поводу: что НЕ является потокобезопасным в ruby ​​/ rails? Vs Что...

92
Как / почему функциональные языки (в частности, Erlang) хорошо масштабируются?

Некоторое время я наблюдал за растущей популярностью языков и функций функционального программирования. Я заглянул в них и не увидел причины обращения. Затем, недавно я посетил презентацию Кевина Смита «Основы Erlang» на Codemash . Мне понравилась презентация, и я узнал, что многие атрибуты...

91
Синхронизация доступа к SimpleDateFormat

В javadoc для SimpleDateFormat указано, что SimpleDateFormat не синхронизируется. «Форматы даты не синхронизируются. Рекомендуется создавать отдельные экземпляры формата для каждого потока. Если несколько потоков обращаются к формату одновременно, он должен быть синхронизирован извне». Но как...

90
Есть ли способ для нескольких процессов совместно использовать прослушивающий сокет?

При программировании сокетов вы создаете прослушивающий сокет, а затем для каждого подключающегося клиента вы получаете обычный потоковый сокет, который можно использовать для обработки запроса клиента. ОС незаметно управляет очередью входящих подключений. Два процесса не могут одновременно...

89
Смущает UPDLOCK, HOLDLOCK

Изучая использование подсказок по таблицам , я столкнулся с двумя вопросами: Какие подсказки блокировки мне следует использовать (T-SQL)? Как влияет HOLDLOCK на UPDLOCK? Ответы на оба вопроса говорят о том, что при использовании (UPDLOCK, HOLDLOCK)другие процессы не смогут читать данные в этой...

88
Как работают Актеры по сравнению с потоками?

Есть ли хорошее и краткое объяснение того, как работают Актеры по сравнению с потоками? Разве поток нельзя рассматривать как актера и отправлять сообщения другим потокам? Я вижу некоторую разницу, но для меня это не так ясно. Могу ли я использовать актеров на любом языке, используя потоки...

86
Node.js или Erlang

Мне очень нравятся эти инструменты, когда дело касается уровня параллелизма, с которым они могут справиться. Erlang / OTP выглядит гораздо более стабильным решением, но требует гораздо большего изучения и глубокого погружения в парадигму функционального языка. И похоже, что Erlang / OTP делает его...

86
Напишите программу, которая наверняка зайдет в тупик [закрыто]

Закрыто . Этот вопрос должен быть более конкретным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он фокусировался только на одной проблеме, отредактировав этот пост . Закрыт 5 лет назад . Уточните этот вопрос Недавно мне задали этот вопрос в...

86
Что именно делает runtime.Gosched?

В версии, предшествующей выпуску go 1.5 веб-сайта Tour of Go , есть фрагмент кода, который выглядит следующим образом. package main import ( "fmt" "runtime" ) func say(s string) { for i := 0; i < 5; i++ { runtime.Gosched() fmt.Println(s) } } func main() { go say("world") say("hello") }...

86
Как дождаться нескольких фьючерсов?

Предположим , у меня есть несколько фьючерсных и нужно ждать , пока либо ни один из них не откажет или все из них успеха. Например: Пусть есть 3 фьючерсов: f1, f2, f3. В случае f1успеха и f2неудачи я не жду f3(и возвращаю ошибку клиенту). Если f2не удается пока f1и f3все еще работает , я не ждать...

85
Java: ExecutorService, который блокируется при отправке после определенного размера очереди

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

84
Когда полезен ConcurrentSkipListSet?

Я только что видел эту структуру данных в API Java 6, и мне любопытно, когда это будет полезным ресурсом. Я готовлюсь к экзамену scjp, и я не вижу, чтобы он освещался в книге Кэти Сьерра, хотя я видел пробные экзаменационные вопросы, в которых это упоминается....

83
Получение возвращаемых значений из горутин

Приведенный ниже код дает ошибку компиляции, говорящую о неожиданном запуске: x := go doSomething(arg) func doSomething(arg int) int{ ... return my_int_value } Я знаю, что могу получить возвращаемое значение, если вызову функцию как обычно, без использования горутины. Или я могу использовать...

82
Решение неприятно параллельных проблем с использованием многопроцессорной обработки Python

Как можно использовать многопроцессорность для решения неприятно параллельных задач ? Ужасно параллельные проблемы обычно состоят из трех основных частей: Чтение входных данных (из файла, базы данных, TCP-соединения и т. Д.). Выполните вычисления с входными данными, при этом каждый расчет не...