LLLit: Изучение и практика программирования

Публикации по теме 'multithreading'


GIL в Питоне
Глобальная блокировка интерпретатора (GIL) в Python: благословение или проклятие? Python — это популярный язык программирования, который широко используется в различных приложениях, включая веб-разработку, научные вычисления, анализ данных и машинное обучение. Python известен своей простотой, удобством использования и гибкостью. Однако одним из ограничений Python является глобальная блокировка интерпретатора (GIL), которая может повлиять на производительность многопоточных программ...

Пункт 78: Синхронизируйте доступ к общим изменяемым данным
Что такое синхронизация? а) Исключение : средство взаимного исключения для предотвращения того, чтобы объект в несогласованном состоянии был замечен одним потоком, пока он модифицируется другим. б) Связь : синхронизация гарантирует, что изменение, выполненное одним потоком после его завершения, будет видно другим потокам, защищенным той же блокировкой. Без синхронизации другой поток может не увидеть изменения, внесенные первым потоком. . Синхронизация необходима для надежной связи..

Вопросы по теме 'multithreading'

Лучшие практики потоковой передачи
Многие проекты, над которыми я работаю, имеют плохую реализацию потоковой передачи, и мне приходится их отслеживать. Есть ли лучший способ обработки потоков. Мой код всегда ждет события, которое никогда не срабатывает. Я вроде как думаю о шаблоне...
11.03.2024

NSOperation и потоки CoreData
Я передаю некоторые данные NSManagedObject между двумя потоками, используя NSOperationQueue с максимальным уровнем параллелизма 1, и мне нужны некоторые предложения о том, правильно ли я делаю это. Поскольку NSManagedObject не является...

Потоки С#, WaitHandle.WaitAll
Возможно ли не блокировать winForm с помощью WaitHandle.WaitAll(waitHandles), а просто установить другой поток, который будет срабатывать при получении сигнала компилирования от WaitHandle.WaitAll?
06.03.2024

Может ли Java понять, что потоки с одинаковыми именами являются разными потоками?
На каждой итерации создается поток «студент». Потому что все эти темы называются «студент». Может ли Java понять, что это разные потоки? while (true) { System.out.println("Waiting for client..."); // open client socket to accept...
03.05.2024

Самое эффективное количество потоков?
У меня есть несколько студентов, которым я помогаю с потоковым сервером. Они используют синхронные сокеты и один поток на клиента, что не очень эффективно. Лучше использовать асинхронные методы, чтобы позволить .Net использовать IOCP. Дело в том,...

правильный способ запустить код с тайм-аутом в Python
Я поискал в Интернете и нашел несколько обсуждений SO и рецептов ActiveState для запуска некоторого кода с таймаутом. Похоже, есть несколько общих подходов: Используйте поток, который запускает код, и join его с тайм-аутом. Если истекло время...

Как создать и запустить новый поток?
Я создал класс System::Windows::Forms , который определяет функцию: System::Void expanding(System::Windows::Forms::TreeViewEventArgs^ e) { //some code } Который я хочу вызвать в отдельном потоке, набрав: Thread^ thisThread = gcnew...

Многопоточность ASP.NET
У меня есть страница ASP.NET, которая отправляет электронное письмо списку пользователей — этот список может быть довольно большим, и мы обнаруживаем, что страница ASP.NET часто отключается по тайм-ауту. Что мы хотим сделать, так это отправить эти...

Пользовательский модальный диалог
Я создаю свой собственный диалог, который в основном представляет собой JPanel, установленный как стекло на JFrame. Я хочу сделать свой диалог модальным в том смысле, что весь код после setVisible() не выполняется, пока диалог видим, и после закрытия...

Исключение неподдерживаемой операции в потоке
Я создал поток для определенного процесса, и я запускаю этот поток одновременно с диалогом прогресса. когда процесс завершится, диалоговое окно прогресса закроется. до этого проблем нет, но когда пользователь дважды нажмет кнопку «Назад» на...
08.03.2024

Является ли двойная проверка блокировкой моего самого чистого варианта для обеспечения того, чтобы задача вызывалась один раз?
У меня есть класс, которому необходимо периодически выполнять некоторую обработку своего частного состояния (ConcurrentDictionary). Я делаю это через Task.Factory.StartNew(doStuff) . Поскольку эта задача изменяет коллекцию, я хочу убедиться, что...
13.04.2024

Имеет ли смысл производитель/потребитель boost::strand?
В этой записи блога (2010 г.) кто-то пытается решить Проблема производителя/потребителя с использованием средства Boost::strand. У меня такое ощущение, что он упустил суть и что его программа никогда не запускает одновременно какого-то...

Разница в использовании ЦП между ps aux и -ef
[user@centos-vm-02 ~]$ ps aux|grep python user 4182 0.0 0.0 9228 1080 ? Ss 02:00 0:00 /bin/sh -c cd data/trandata && /usr/local/bin/python2.7 main.py >> /dev/null 2>&1 user 4190 0.1 0.1 341108 10740 ?...
12.05.2024

Необычный случай сбора был изменен при обработке фонового потока
Я пытаюсь загрузить данные из текстового файла в фоновом потоке с обработчиком завершения, который выпишет plist после того, как я обработаю данные с помощью регулярного выражения. Я получаю сообщение об ошибке «Коллекция была видоизменена при...

Parallel.ForEach и DbContext
Я использую Parallel.ForEach , и это значительно повышает производительность моего кода, но меня интересует DbContext с несколькими потоками. Я знаю, что это не потокобезопасно, поэтому я использую блокировки там, где мне нужно. Цикл перебирает...

Исключение слишком много соединений с Hibernate
У меня ошибка при попытке подключиться к Hibernate. Код создает 1000 потоков, и каждый поток открывает соединение. В любом случае, код довольно короткий, и они быстро закрывают соединения. Я печатаю счетчик с общим количеством подключений...

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

Как я могу использовать параллелизм (потоки) в JavaFX (с FXML!!! (JavaFX Scene Builder))?
Как я могу использовать потоки в JavaFX с FXML и классом задач или услуг? Мне нужен параллелизм в моей программе, потому что я использую очень длинный цикл. Если я закодирую это "вручную" (без FXML), то это сработает. А вот с FXML не работает...

многоядерное, многопоточное ускорение: чтение через CSV с использованием TMemoryStream
Я пишу параллельный код для перечисления большого набора CSV-файлов, каждый из которых содержит исторические данные об акциях (более 6500 символов), и рассчитываю, достигла ли каждая акция своего исторического максимума. Я реализовал пул потоков и...

Как я могу избежать создания подклассов во время ожидания завершения Executor?
У меня есть Executor , который должен быть завершен, прежде чем я смогу отключить другой Executor , я думал о попытке реализовать тактику ожидания-уведомления, но уведомление должно прийти от executor.isTerminated() , поэтому, если я не...

Новые материалы

Как развивается смешанно-целочисленное программирование, часть 7
Унифицированная техника раннего завершения для первично-двойственных алгоритмов в смешанно-целочисленном коническом программировании (arXiv) Автор : Ювэнь Чэнь , Кэтрин Нин , Поль Гулар..

Как научить модель Keras распознавать текст переменной длины
Я некоторое время играл с официальным примером Keras image_ocr.py и хочу поделиться своими выводами в этом посте. В официальном примере выполняется только обучение модели, но отсутствует..

Практическая пакетная нормализация
История начинается после использования инициализации He вместе с ELU (или любым вариантом ReLU) может значительно снизить опасность проблем с исчезающими/взрывающимися градиентами в начале..

Поэзия онлайн-кодирования: путешествие пикселей и страсти
В мире, наполненном инновациями, онлайн-обучение программированию становится холстом, на котором обретает форму полотно вашей мечты. Это больше, чем просто создание строк кода; это сродни..

Обработка изображений с помощью Python - размытие и повышение резкости для начинающих
Как применить ядра свертки к цветным изображениям? В этой статье мы обсудим, как применять ядра размытия и повышения резкости к изображениям. Эти базовые ядра составляют основу многих более..

Ограничение скорости в .NET Core 7 Web API
Что такое ограничение скорости? Ограничение скорости — это процесс, используемый для ограничения количества запросов, разрешенных для определенного ресурса в указанном временном окне. .NET..

Стабильная Diffusion 1.0 выдаёт более красивые картинки, чем SD 2.1?! Почему?
Удивительные открытия, которые я сделал недавно. Смотрите в видео: https://youtu.be/PakgD6FewoU Есть одно логичное объяснение — что у вас?