multithreading ×25
Создан 05.01.2025
23
голоса
3
ответов
59
просмотров
"implements Runnable" против "extends Thread" в Java: что выбрать?

Я столкнулся с вопросом о том, как в Java реализовать потоки, и нашел два способа их создания:

  1. С использованием интерфейса Runnable:
public class MyRunnable implements Runnable {
    public void run() {
        // Код потокa
    }
}
// Запускается с помощью вызова "new Thread(new...
13
голоса
5
ответов
53
просмотров
Разница между "wait()" и "sleep()" в Java

Вопрос: В чем разница между методами wait() и sleep() в потоках?

Я хочу разобраться в различиях между wait() и sleep() в контексте работы с потоками в Java.

На мой взгляд, поток, находящийся в состоянии wait(), остаётся в режиме выполнения и использует процессорные циклы, тогда как...

12
голоса
5
ответов
46
просмотров
Как работают сервлеты? Инстанцирование, сессии, общие переменные и многопоточность

У меня есть веб-сервер, который содержит множество сервлетов. Для передачи информации между этими сервлетами я устанавливаю переменные сессии и экземпляров.

Теперь, если 2 или более пользователей отправляют запросы на этот сервер, что происходит с переменными сессии? Будут ли они общими для всех...

11
голоса
5
ответов
67
просмотров
Что значит 'synchronized'?

Я столкнулся с несколькими вопросами относительно использования и значимости ключевого слова synchronized в Java.

Каково значение ключевого слова synchronized? Когда следует использовать synchronized для методов? Что это означает как с программной, так и с логической точки зрения?

10
голоса
5
ответов
50
просмотров
Как завершить поток в Java?

Можно ли завершить работающий поток, не устанавливая и не проверяя какие-либо флаги, семафоры и т.д.?

9
голоса
3
ответов
74
просмотров
Что такое потокобезопасность и непотокобезопасность в PHP?

Я увидел разные бинарные файлы для PHP, такие как "non-threaded" и "thread safe".

Что это означает?

В чем разница между этими пакетами?

6
голоса
5
ответов
46
просмотров
Как получить возвращаемое значение из потока?

У меня есть функция foo, которая возвращает строку 'foo'. Я пытаюсь получить значение 'foo', которое возвращается из целевой функции потока. Вот мой код:

from threading import Thread

def foo(bar): print('hello '.format(bar)) return 'foo'

thread = Thread(target=foo,...

5
голоса
5
ответов
33
просмотров
Таймаут при вызове функции

Я вызываю функцию в Python, которая может зависнуть и заставить меня перезапустить скрипт.

Как можно вызвать эту функцию или в что её обернуть, чтобы если выполнение займет больше 5 секунд, скрипт отменил её выполнение и выполнил что-то другое?

5
голоса
5
ответов
32
просмотров
Программно определить количество ядер на машине

Существует ли способ определить количество ядер у машины с помощью C/C++ в независимом от платформы формате? Если такого способа не существует, можно ли узнать это отдельно для каждой платформы (Windows/*nix/Mac)?

5
голоса
5
ответов
29
просмотров
Разница между интерфейсами Runnable и Callable в Java

Разница между Runnable и Callable в Java при проектировании многопоточности

Я работаю над проектом на Java, в котором требуется реализовать многопоточность, и столкнулся с выбором между использованием интерфейсов Runnable и Callable. Можете пояснить, в чем основные различия между этими двумя...

0
голоса
1
ответов
23
просмотров
Как распределяются потоки для обработки запросов Servlet?

Подскажите, пожалуйста, что такое "поток на запрос" и "поток на соединение"? На какой модели работают сервлеты? Как выделяются потоки для обработки HTTP-запросов? Это один поток на запрос или на соединение?

Допустим, я хочу выполнить долгий по времени процесс в методе doGet() моего Servlet...

0
голоса
5
ответов
26
просмотров
Почему методы wait() и notify() объявлены в классе Object в Java?

Почему методы wait() и notify() объявлены в классе Object, а не в классе Thread?

0
голоса
4
ответов
20
просмотров
Когда следует использовать поток Java вместо Executor?

Executor выглядит как чистая абстракция для управления потоками. В каких ситуациях имеет смысл использовать Thread напрямую, вместо того чтобы полагаться на более надежный Executor?

0
голоса
3
ответов
50
просмотров
"Как задать количество потоков/ЦП для Java VM?"

Описание проблемы: Ограничение числа потоков/процессов в Java VM

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

0
голоса
3
ответов
16
просмотров
Следует ли использовать отдельные экземпляры ScriptEngine и CompiledScript для каждого потока?

Проблема с многопоточностью при использовании Java Scripting API и Nashorn:

Я использую Java Scripting API в своей программе и могу одновременно выполнять некоторые скрипты. Скрипты не используют общие объекты скриптов,Bindings или Context, но могут использовать одни и те же объекты...

0
голоса
3
ответов
14
просмотров
Что такое бес блокировочное многопоточное программирование?

Я заметил, что многие люди, статьи и посты на Stack Overflow утверждают, что разработали свои собственные "безлоковые" контейнеры для многопоточного использования. Предполагая, что они не использовали прием с модулем, который может негативно сказаться на производительности (то есть каждый поток...

0
голоса
3
ответов
18
просмотров
Что делает SwingUtilities.invokeLater?

Описание проблемы

У меня возникли вопросы по поводу работы метода SwingUtilities.invokeLater в Java. Что именно делает этот метод? Он просто задерживает выполнение блока кода внутри своего метода run? В чем разница между вызовом действия внутри функции invokeLater и простым вызовом этого...

0
голоса
4
ответов
17
просмотров
SwingUtilities.invokeLater: Вызов кода в потоке событий Swing

У меня возник вопрос, касающийся SwingUtilities.invokeLater. Когда следует его использовать? Нужно ли применять его каждый раз, когда я обновляю компоненты GUI? Что именно он делает? Существует ли альтернатива, так как это не кажется интуитивно понятным и добавляет, по всей видимости, ненужный код?

0
голоса
5
ответов
12
просмотров
Что нужно знать при погружении в многопоточное программирование на C++

Я сейчас разрабатываю приложение для беспроводных сетей на C++, и встал перед задачей, когда мне нужно будет многопоточно организовать работу программы в одном процессе, а не иметь их в отдельных процессах. В теории я понимаю, что такое многопоточность, но пока не погружался в практическую...

0
голоса
5
ответов
12
просмотров
Как запустить/остановить/перезапустить поток в Java?

Я столкнулся с трудностями в поиске способа запуска, остановки и перезапуска потоков в Java.

У меня есть класс Task, который реализует интерфейс Runnable и находится в файле Task.java. Моему основному приложению необходимо запускать этот таск в потоке, останавливать (убивать) поток при...