Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 30.01.2014
Сообщений: 5

Threads и классы

13.02.2015, 20:11. Показов 1341. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть вопрос. Как известно создавая класс с интерфейсом Runnable мы потом можем добавить его в класс потока. А вот как узнать какой класс находится в потоке ?? и какие интерфейсы он реализует?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.02.2015, 20:11
Ответы с готовыми решениями:

Threads
Доброго времени суток. Возможно ли реализовать многопоточное консольное приложение, при этом количество потоков задать после после запуска?

Threads
Недавно начал изучать многопоточность. Нашёл функцию uintptr_t _beginthreadex( // NATIVE CODE void *security, unsigned...

Threads
Есть массив потоков в количестве 10 и есть функция, которую надлежит выполнить 50 раз, как этими 10-ю потоками выполнить её 50 раз?

4
Кандёхаем веселее!
 Аватар для MLPMan
296 / 330 / 76
Регистрация: 02.10.2012
Сообщений: 2,175
13.02.2015, 21:01
В классе Thread указанный Runnable записывается в приватное поле target. Можно узнать инфу рефлексией.
0
0 / 0 / 0
Регистрация: 30.01.2014
Сообщений: 5
13.02.2015, 21:32  [ТС]
Да так получается узнать что он Runnable а вот если класс реализует не один интерфейс как узнать остальные ?
0
Кандёхаем веселее!
 Аватар для MLPMan
296 / 330 / 76
Регистрация: 02.10.2012
Сообщений: 2,175
13.02.2015, 21:53
Лучший ответ Сообщение было отмечено maxHarper как решение

Решение

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import java.lang.reflect.*;
 
class Run1 implements Runnable {
 
    @Override
    public void run() {
        throw new UnsupportedOperationException("Not supported yet.");
    }
 
}
 
public class Foo {
 
    static String getRunnableClass(Thread t) throws Exception {
        Field[] allFilds = t.getClass().getDeclaredFields(); //список всех полей класса Thread
        Field target = null;
        for (Field i : allFilds) if (i.getName().equals("target")) { //отыщем с именем "target"
            target = i;
            break;
        }
        //if (target == null) throw new IllegalArgumentException("wrong Thread cluz");
        target.setAccessible(true); //Чтобы не выбрасывало IllegalAccessException из-за private доступа
        Object v = target.get(t); //Прочтём значение поля у объекта t
        return v.getClass().getName(); //Узнаем, к какому классу принадлежит это значение
    }
 
 
    //testin
    public static void main(String[] args) throws Exception {
        Thread t = new Thread(new Run1());
        System.out.println(getRunnableClass(t));
    }
}
Добавлено через 4 минуты
http://stackoverflow.com/quest... ce-in-java
2
0 / 0 / 0
Регистрация: 30.01.2014
Сообщений: 5
13.02.2015, 23:35  [ТС]
Спасибо!!!!! очень помог!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.02.2015, 23:35
Помогаю со студенческими работами здесь

IO и threads
Посоветуйте плиз, что делать! возникает ошибка когда разные нитки пишут в один файл. "Probable IO race condition detected". ...

Threads and WebClient
НЕ могу понять одну вещь, почему при асинхронном скачивании и многопоточности, качается по два файла за раз, хотя должно, как мне кажется,...

Threads + Timer
у меня стоит задача выполнять какие-то действия в нескольких потока с какой-то периодичностью весь код я свел просто к модели дабы не...

Threads, потоки
Здравствуйте, ребят, помогите решить задачу, не могу понять как все реализовать. Создать класс Flood, который получает в конструкторе...

Two Threads + CriticalSection
код... #include <stdio.h> #include <stdlib.h> #define WIN32_LEAN_AND_MEAN #define _WIN32_WINNT 0x0500 #include <windows.h> ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru