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

Об’єднання ресурсів у заданих межах та автоматичне призначення завдань відкритим працівникам.

9
Якщо мій інтерфейс повинен повернути Завдання, який найкращий спосіб не виконати операцію?
У наведеному нижче коді, завдяки інтерфейсу, клас LazyBarповинен повернути завдання зі свого методу (а для аргументів змінити не можна). Якщо LazyBarреалізація s незвична тим, що вона запускається швидко і синхронно - який найкращий спосіб повернути завдання без операції з методу? Я пішов з Task.Delay(0)нижче, однак я хотів би знати, чи …

12
Скільки ниток занадто багато?
Я пишу сервер і кожну дію надсилаю в окремий потік, коли запит надійде. Я роблю це, тому що майже кожен запит робить запит до бази даних. Я використовую бібліотеку ниток для скорочення побудови / знищення ниток. Моє запитання: що таке хороша точка відсічення для таких потоків вводу / виводу? Я …

17
Іменування ниток та пулів потоків ExecutorService
Скажімо, у мене є програма, яка використовує Executor рамки як такі Executors.newSingleThreadExecutor().submit(new Runnable(){ @Override public void run(){ // do stuff } } Коли я запускаю цю програму у відладчику, створюється потік із таким іменем (за замовчуванням): Thread[pool-1-thread-1] . Як бачите, це не дуже корисно, і, наскільки я можу сказати, Executorрамка …

14
ExecutorService, як чекати завершення всіх завдань
Який найпростіший спосіб чекати ExecutorServiceзавершення всіх завдань ? Моє завдання насамперед обчислювальне, тому я просто хочу запустити велику кількість завдань - по одному на кожне ядро. Зараз моє налаштування виглядає так: ExecutorService es = Executors.newFixedThreadPool(2); for (DataTable singleTable : uniquePhrases) { es.execute(new ComputeDTask(singleTable)); } try{ es.wait(); } catch (InterruptedException e){ …

11
Thread vs ThreadPool
Яка різниця між використанням нової нитки та використанням потоку з пулу ниток? Які переваги від продуктивності існують і чому я повинен розглянути можливість використання потоку з пулу, а не того, який я явно створив? Я тут конкретно думаю про .NET, але загальні приклади чудові.

6
Як отримати ідентифікатор потоку з пулу потоків?
У мене є фіксований пул потоків, якому я надсилаю завдання (обмежено 5 потоками). Як я можу дізнатись, яка з цих 5 ниток виконує мою задачу (щось на кшталт "тема № 3 з 5 виконує це завдання")? ExecutorService taskExecutor = Executors.newFixedThreadPool(5); //in infinite loop: taskExecutor.execute(new MyTask()); .... private class MyTask implements …

10
Об'єднання ниток в C ++ 11
Відповідні питання : Про C ++ 11: C ++ 11: std :: об'єднано нитку? Чи зробить async (запуск :: async) в C ++ 11 пули потоків застарілими, щоб уникнути створення дорогих ниток? Про Boost: C ++ посилення потоку повторного використання потоків boost :: thread і створення пулу з них! Як …

15
Коли використовувати пул потоків у C #? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, редагуючи цю публікацію . Закрито 2 роки тому . Удосконаліть це питання Я намагався вивчити багатопотокове програмування в C #, і я збентежений, …

1
Чи робить async (запуск :: async) в C ++ 11 пули потоків застарілими, щоб уникнути створення дорогих ниток?
Це питання пов'язане з цим питанням: Чи об'єднано std :: thread в C ++ 11? . Хоча питання відрізняється, намір однаковий: Запитання 1: Чи все-таки має сенс використовувати власний (або сторонні бібліотеки) пули потоків, щоб уникнути створення дорогих ниток? В іншому питанні було зроблено висновок про те, що ви не …

11
Використання ThreadPool.QueueUserWorkItem в ASP.NET в сценарії високого трафіку
У мене завжди було враження, що використання ThreadPool для (скажімо, некритичних) короткочасних фонових завдань вважалося найкращою практикою навіть в ASP.NET, але потім я натрапив на цю статтю, яка, здається , говорить про інше - аргумент полягає в тому, що вам слід залишити ThreadPool для вирішення запитів, пов’язаних з ASP.NET. Ось …

3
FixedThreadPool vs CachedThreadPool: менша з двох зол
У мене є програма, яка породжує теми (~ 5-150), які виконують купу завдань. Спочатку я використовував те, FixedThreadPoolтому що подібне запитання припускало, що вони краще підходять для більш тривалих завдань, і з моїх дуже обмежених знань багатопотокової роботи я вважав середню тривалість життя ниток (кілька хвилин) " довго прожили ". …

7
Java: ExecutorService, що блокує подання після певного розміру черги
Я намагаюся кодувати рішення, в якому один потік виробляє завдання з інтенсивним введенням / виводом, які можна виконувати паралельно. Кожне завдання має значні дані в пам'яті. Тому я хочу мати можливість обмежити кількість завдань, які очікують на даний момент. Якщо я створюю ThreadPoolExecutor так: ThreadPoolExecutor executor = new ThreadPoolExecutor(numWorkerThreads, numWorkerThreads, …

4
Як налаштувати тонко налаштований пул потоків для ф’ючерсів?
Наскільки великий пул потоків Scala для ф’ючерсів? Мій додаток Scala робить багато мільйонів future {}с, і мені цікаво, чи можу я щось зробити для їх оптимізації, налаштувавши пул потоків. Дякую.

1
ThreadPool.QueueUserWorkItem проти Task.Factory.StartNew
в чому різниця між наведеним нижче ThreadPool.QueueUserWorkItem проти Task.Factory.StartNew Якщо вищезазначений код викликається 500 разів для якогось тривалого завдання, чи означає це, що всі потоки пулу потоків будуть зайняті? Або TPL (2-й варіант) буде достатньо розумним, щоб просто зайняти потоки, менші або рівні кількості процесорів?

6
Чи повинен я використовувати ThreadPools або паралельну бібліотеку завдань для операцій, пов'язаних з IO
В одному зі своїх проектів, який є свого роду агрегатором, я аналізую канали, подкасти тощо з Інтернету. Якщо я використовую послідовний підхід, враховуючи велику кількість ресурсів, для їх обробки потрібен досить багато часу (через проблеми з мережею та подібні речі); foreach(feed in feeds) { read_from_web(feed) parse(feed) } Отже, я хочу …

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