Запитання з тегом «concurrency»

В інформатиці одночасність - це властивість систем, в яких можна проводити кілька обчислень у періоди, що перетинаються. Обчислення можуть бути виконані на декількох ядрах в одній мікросхемі, попередньо розділених за часом потоках на одному і тому ж процесорі або виконані на фізично розділених процесорах.

14
Паралельність Java: фіксація зворотного відліку проти циклічного бар'єру
Я читав API java.util.concurrent і виявив це CountDownLatch: Допомога синхронізації, яка дозволяє одному або більше потокам чекати, поки не завершиться набір операцій, що виконуються в інших потоках. CyclicBarrier: Довідка для синхронізації, яка дозволяє набору потоків всі чекати один одного для досягнення загальної бар'єрної точки. Мені обидва здаються рівними, але я …

17
Що таке тупик?
Під час написання багатопотокових програм однією з найпоширеніших проблем є тупикові місця. Мої запитання до громади: Що таке тупик? Як ви їх виявляєте? Ви справляєтесь з ними? І нарешті, як ви запобігаєте їх виникненню?

5
Чи безпечна нитка значень ConcurrentHashMap?
У javadoc для ConcurrentHashMap є наступне: Операції пошуку (включаючи get), як правило, не блокуються, тому можуть перетинатися з операціями оновлення (включаючи ставити та видаляти). Результати пошуку відображають результати останніх завершених операцій з оновлення, проведених після їх початку. Для сукупних операцій, таких як putAll та clear, паралельні вилучення можуть відображати вставлення …

3
Чи безпечно HttpClient одночасно використовувати?
У всіх прикладах, з яких я можу знайти звичаї HttpClient, він використовується для разових дзвінків. Але що робити, якщо у мене стійка ситуація з клієнтом, коли одночасно можна зробити кілька запитів? В основному, чи безпечно дзвонити client.PostAsyncпо 2 потоку одразу проти того ж екземпляра HttpClient. Я не дуже шукаю тут …

6
iPhone - головна нитка Grand Central Dispatch
Я з успіхом використовував грандіозну центральну розсилку в своїх додатках, але мені було цікаво, яка реальна перевага використання чогось подібного: dispatch_async(dispatch_get_main_queue(), ^{ ... do stuff або навіть dispatch_sync(dispatch_get_main_queue(), ^{ ... do stuff Я маю на увазі, що в обох випадках ви запускаєте блок, який потрібно виконати на головній нитці, саме …

5
Чи безпечні несинхронізовані статичні методи, якщо вони не змінюють змінні статичного класу?
Мені було цікаво, чи є у вас статичний метод, який не синхронізований, але не змінює жодних статичних змінних, це безпечно для потоків? Що робити, якщо метод створює локальні змінні всередині нього? Наприклад, чи безпечний такий код потоку? public static String[] makeStringArray( String a, String b ){ return new String[]{ a, …

4
Greenlet Vs. Нитки
Я новачок у гевен та зелених грінках. Я знайшов гарну документацію про те, як працювати з ними, але жодна не дала мені обґрунтування того, як і коли я повинен використовувати зелені! У чому вони насправді гарні? Корисно використовувати їх на проксі-сервері чи ні? Чому б не нитки? Я не впевнений …

10
Хороший приклад лайвока?
Я розумію, що таке лайволак, але мені було цікаво, чи хтось має хороший приклад на основі коду? І під кодом я не маю на увазі "двоє людей, які намагаються пройти один одного в коридорі". Якщо я прочитаю це ще раз, я втрачу обід.

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

4
Різні типи захищених від потоків наборів на Java
Здається, існує багато різних реалізацій та способів генерації безпечних наборів наборів у Java. Деякі приклади включають 1) CopyOnWriteArraySet 2) Collections.synchronizedSet (встановити набір) 3) ConcurrentSkipListSet 4) Collections.newSetFromMap (новий ConcurrentHashMap ()) 5) Інші набори, сформовані аналогічно (4) Ці приклади походять із шаблону сумісності: Реалізація паралельного набору в Java 6 Невже хтось може …
135 java  concurrency  set 


4
Який алгоритм паралельного сортування має найкращі середні показники випадку?
Сортування займає O (n log n) у серійному корпусі. Якщо у нас є O (n) процесори, ми сподіваємось на лінійну швидкість. O (log n) паралельні алгоритми існують, але вони мають дуже високу константу. Вони також не застосовуються до товарного обладнання, яке не має ніде поблизу процесорів O (n). З процесорами …

6
Яку паралельну реалізацію черги я повинен використовувати на Java?
З JavaDocs: ConcurrentLinkedQueue є підходящим вибором , коли багато потоків буде загальний доступ до загальної колекції. Ця черга не дозволяє нульових елементів. ArrayBlockingQueue - класичний "обмежений буфер", в якому масив фіксованого розміру містить елементи, вставлені виробниками та витягнуті споживачами. Цей клас підтримує необов'язкову політику справедливості для замовлення очікуючих ниток для …

8
.NET - Блокування словника проти ConcurrentDictionary
Я не міг знайти достатньо інформації про ConcurrentDictionaryтипи, тому думав, що запитаю про це тут. В даний час я використовую a Dictionaryдля утримання всіх користувачів, до яких постійно звертаються декілька потоків (з пулу потоків, тому немає точної кількості потоків), і він має синхронізований доступ. Нещодавно я дізнався, що в .NET …

5
Коли використовувати леткі з багатопоточною різьбою?
Якщо є два потоки, що мають доступ до глобальної змінної, то багато підручників кажуть, що робить цю змінну мінливою, щоб запобігти компілятору кешувати змінну в регістрі, і, таким чином, вона не оновлюється правильно. Однак два потоки, що мають доступ до спільної змінної, - це те, що вимагає захисту за допомогою …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.