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

Многопоточность - это способность компьютера или программы выполнять работу одновременно или асинхронно, используя несколько одновременных потоков выполнения (обычно называемых потоками).

3
Parallel.ForEach () и foreach (IEnumerable <T> .AsParallel ())
Эрг, я пытаюсь найти эти два метода в BCL, используя Reflector, но не могу их найти. В чем разница между этими двумя фрагментами? A: IEnumerable&lt;string&gt; items = ... Parallel.ForEach(items, item =&gt; { ... }); B: IEnumerable&lt;string&gt; items = ... foreach (var item in items.AsParallel()) { ... } Существуют ли различные …

4
std :: lock_guard или std :: scoped_lock?
C ++ 17 ввел новый класс блокировки под названием std::scoped_lock. Судя по документации, он похож на уже существующий std::lock_guardкласс. Какая разница и когда я должен его использовать?

12
Безопасно ли получать значения из java.util.HashMap из нескольких потоков (без изменений)?
Есть случай, когда карта будет построена, и после инициализации она больше никогда не будет изменена. Однако к нему можно будет получить доступ (только с помощью get (key)) из нескольких потоков. Насколько безопасно использовать java.util.HashMapтакой способ? (В настоящее время я с удовольствием использую a java.util.concurrent.ConcurrentHashMap, и у меня нет никакой потребности …

5
Хватая Node JS альтернативу многопоточности
Если я правильно понимаю, Node JS не блокирует ... поэтому вместо ожидания ответа от базы данных или другого процесса он перешел к чему-то другому и проверит позже. Также он однопоточный. Значит, все это означает, что данный процесс Node JS может полностью и эффективно использовать одно ядро ​​ЦП, но не будет …

6
В чем различия между многопоточными и многопроцессорными модулями?
Я учусь , как использовать threadingи те multiprocessingмодули в Python для выполнения определенных операций параллельно и ускорить свой код. Я нахожу это трудным (возможно, потому что у меня нет никакого теоретического фона об этом), чтобы понять, в чем разница между threading.Thread()объектом и объектом multiprocessing.Process(). Кроме того, мне не совсем понятно, …

13
Как сформулировать разницу между асинхронным и параллельным программированием?
Многие платформы продвигают асинхронность и параллелизм как средства повышения быстродействия. Я понимаю разницу в целом, но часто мне трудно сформулировать это в собственном уме, а также для других. Я рабочий программист и довольно часто использую асинхронные функции и обратные вызовы. Параллелизм кажется экзотическим. Но мне кажется, что их легко объединить, …


8
Безопасна ли! = Проверка потоков?
Я знаю, что составные операции, например i++, не являются потокобезопасными, поскольку включают в себя несколько операций. Но является ли проверка ссылки на самой себе поточно-ориентированной операцией? a != a //is this thread-safe Я пытался запрограммировать это и использовать несколько потоков, но ничего не вышло. Думаю, я не мог смоделировать гонку …

1
Как получить ожидаемую тему. Сон?
Я пишу сетевое приложение, основанное на парадигме ожидания / сна. Иногда возникают ошибки подключения, и по моему опыту стоит подождать некоторое время, а затем повторить попытку. Проблема заключается в том, что если я использую Thread.Sleep или другую подобную операцию блокировки в await / async, он блокирует всю активность в потоке …


11
Тема против ThreadPool
В чем разница между использованием нового потока и использованием потока из пула потоков? Какие преимущества в производительности есть и почему я должен рассмотреть использование потока из пула, а не одного, который я явно создал? Я имею в виду конкретно .NET здесь, но общие примеры в порядке.

5
Почему CancellationToken отличается от CancellationTokenSource?
Я ищу объяснение того, почему .NET CancellationTokenstruct была введена в дополнение к CancellationTokenSourceклассу. Я понимаю, как следует использовать API, но хочу также понять, почему он так устроен. Т.е. почему у нас: var cts = new CancellationTokenSource(); SomeCancellableOperation(cts.Token); ... public void SomeCancellableOperation(CancellationToken token) { ... token.ThrowIfCancellationRequested(); ... } вместо прямой передачи, …

5
Как завершить поток в C ++ 11?
Мне не нужно правильно завершать поток или заставлять его отвечать на команду «завершить». Я заинтересован в принудительном завершении потока с использованием чистого C ++ 11.

6
Являются ли Java статические инициализаторы потокобезопасными?
Я использую статический блок кода для инициализации некоторых контроллеров в реестре, который у меня есть. Поэтому мой вопрос: могу ли я гарантировать, что этот статический блок кода будет вызываться только один раз при первой загрузке класса? Я понимаю, что не могу гарантировать, когда будет вызван этот блок кода, я предполагаю, …

5
Asynctask против темы в Android
В пользовательском интерфейсе для выполнения некоторых фоновых работ я использовал отдельную Thread. Но, как предлагают другие, я сейчас использую AsyncTask. В чем главное различие между a Threadи an AsyncTask? В каком сценарии я должен использовать Threadили AsyncTask?

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.