Описание тега java-threads

По вопросам, связанным с потоками Java, включая параллельные структуры данных, структуру fork-join, атомарные классы, блокировку / синхронизацию потоков, видимость и задержку
3 ответа

Могу ли я вызвать синхронизированный метод, который вызывает несинхронизированный метод, который вызывает синхронизированный метод?

В Java используется ключевое слово synchronized все внутри одного объекта и потока. Могу ли я вызвать синхронизированный метод, который вызывает несинхронизированный метод, который вызывает синхронизированный метод, без окончательной блокировки синх…
0 ответов

Установить уведомление автоматически

Я создал приложение, которое отправляет уведомления каждые 2 часа, используя BackgroundThread, расширяющий класс Thread, он работает очень хорошо, но когда я закрываю приложение, я не получаю никаких уведомлений, не могли бы вы помочь мне. Вот мой к…
28 апр '17 в 19:00
1 ответ

Java качели параллелизм, множественные свойства, схожие слушатели?

У меня есть панель с именем DataPanel, которая расширяет JPanel, и рабочая группа с именем DataPanelWorker, которая расширяет SwingWorker. В настоящее время, когда я создаю DataPanel, я запускаю DataPanelWorker, который выполняет некоторые вычислени…
06 окт '17 в 16:26
1 ответ

Поток Java отнимает больше времени при увеличении ввода

Я написал программу на Java, чтобы просматривать огромные файлы журналов. Для параллельной обработки файлов я использую концепцию потоков. Ниже приведен исходный код для того же. ExecutorService threadPool = Executors.newFixedThreadPool(8); for(int …
30 мар '17 в 05:56
1 ответ

Как заставить создать один поток, используя scheduledexecutorservice и избежать многопоточности

Я хотел бы выполнить следующий код JAVA только один раз при входе на страницу welcome.jsp. welcome.jsp: <%WeeklyScheduledMail wsm = WeeklyScheduledMail.INSTANCE; wsm.startThread(); %> Таким образом, если пользователь получает доступ к веб-сайт…
02 май '18 в 07:18
2 ответа

Изменить внешний объект из потока

public void fooAndBar() { HashMap<Foo, Bar> fooBarMap = new HashMap<>(); CompletionService completionService = new ExecutorCompletionService(exec); for(int i=0; i<10; i++) { completionService.submit(new Callable() { @Override public V…
17 апр '17 в 07:51
2 ответа

Java: запуск подпроцесса с собственным терминалом

У меня есть два контроллера и одна программа, которая запускает их обоих. Одним из них является эмулятор, который производит данные, другой анализирует данные. Два контроллера зависят друг от друга и взаимодействуют с помощью RMI. Поэтому я запускаю…
23 янв '15 в 12:03
1 ответ

Java-сокеты помогают клиент-серверу

Мне нужна помощь, чтобы сделать практику Java с потоками. Я хотел, чтобы эта программа вернула мне информацию, которую клиенты пишут со своим именем и временем сообщения. Это код, который у меня есть на данный момент. Точно так же у меня есть сообще…
01 ноя '17 в 17:52
1 ответ

Дата уничтожения объекта

Мне нужен совет по этому коду: Thread myClock = new Thread() { @Override public void run() { try { while (!isInterrupted()) { Thread.sleep(1000); runOnUiThread(new Runnable() { @Override public void run() { Date dt = new Date(); SimpleDateFormat myC…
03 сен '17 в 13:28
4 ответа

Есть ли место в стеке для каждого потока?

Если я правильно понимаю, стек предназначен для локальных примитивов и ссылок на объекты в куче. Так что же происходит, если у вас более одного потока? Разделяют ли они одно и то же пространство стека в одно и то же время (но разные области), или JR…
16 май '15 в 00:40
1 ответ

ScheduledExecutorService заканчивается после тайм-аута

Добрый день! У меня есть планировщик, и мне нужно проверить, сколько времени он работает. Как я могу это сделать? Мне нужно вернуть ошибку от someFunction(), когда планировщик работает более 5 минут ScheduledExecutorService scheduler = Executors.new…
11 янв '18 в 22:19
1 ответ

Реализация алгоритма Java - Dekkers приводит к двум потокам в критической секции

Я пытаюсь реализовать алгоритм Деккерса для сценария, где есть две железные дороги, и есть точка, где они используют одну и ту же часть пути. Только один поезд должен быть допущен к этому участку за один раз, и один поезд может проходить столько раз…
25 фев '19 в 17:43
1 ответ

Главное не ждать потоков даже после использования Thread.join() в Java

Функция join() заставляет функцию main ждать, пока все потоки не завершат выполнение, но main печатает completed до Thread-1 а также Thread-2 завершает выполнение. Я не могу найти ошибку в коде. где ошибка? class ThreadDemo extends Thread { private …
15 сен '18 в 15:49
1 ответ

Получение значения из потока, запущенного в цикле while

У меня есть поток Java, который запускает алгоритм поиска пути в константе while. Затем, каждый раз, я хочу получить наиболее обновленный путь из потока. Тем не менее, я не уверен, как это сделать, и думаю, что я могу делать это неправильно. Моя вет…
19 фев '19 в 13:59
1 ответ

Блокировка асинхронных очередей Java

Я пытаюсь найти способ реализовать следующее в Java. Thread1 добавит задания в очередь1. Другой другой поток (Thread2) добавит задания в очередь2. В методе run() Thread1 я жду, пока в очереди 1 не появится задание, и, скажем, я распечатаю его, если …
13 окт '16 в 13:59
2 ответа

Как сделать круговую очередь полностью поточно-ориентированной

В тот момент, когда я только что добавил синхронизированный к большинству методов, кажется, что без него эти методы не будут потокобезопасными. Есть ли что-то еще, что мне нужно реализовать, чтобы гарантировать, что это потокобезопасно. Кроме того, …
0 ответов

Android начать новый поток вызова функции JNI сбой

public class MainActivity extends AppCompatActivity { private ProcessWithQueue mprocessWithQueue; private LinkedBlockingQueue<byte []> mframeQueue; private NDKUtils ndk = new NDKUtils(); @Override protected void onCreate(Bundle savedInstanceSt…
24 июл '17 в 16:03
1 ответ

Как создать одну нить перезарядки

Я нахожу способ сделать однопоточную перезарядку, но застрял. В классе, который управляет перезарядкой, я создал: private HashMap<UUID,Integer> players = new HashMap<>(); //UUID = Player UUID //Integer = Time in cooldown (Seconds) public…
26 окт '16 в 21:47
0 ответов

Window.setFullScreenWindow в Java 8 вызывает зависание приложения на alt-tab

Так что это то, с чем я экспериментировал ранее в этот день - сам режим работает нормально, мой цикл рендеринга работает нормально (пока, пока я не улучшу его), и так далее, и так далее. Приложение не имеет никаких проблем при перемещении по моему к…
23 янв '17 в 23:37
1 ответ

Убивает работающую банку с очисткой?

Я новичок в мире многопоточности и развертывания кода на сервере. У меня есть проект, который имеет основной поток. Этот основной поток имеет пул из 10 других потоков, которые "запрашивают" другое оборудование с использованием SNMP. Затем эти потоки…
19 фев '16 в 20:53