Я пытаюсь вызвать runnable thread, который помещает элемент в LinkedBlockingList. Проблема, с которой я сейчас сталкиваюсь, заключается в том, что я не могу запустить внутренние методы. Выполняется только внешний метод. Я знаю, что мне нужно добавить строки кода ниже в комментарии, но я действительно не знаю.Invoke runnable внутри метода и объекта пропуска
public void prod(TwitterObj obj) {
System.out.println("Prod Outer");
class Producer implements Runnable {
TwitterObj obj;
@Override
public void run() {
try {
queue.put(obj);
System.out.println("Put OBJ into queue: " + obj.getMsg());
++i;
} catch (InterruptedException e) {
e.printStackTrace();
}
};
//invoke thread
}}
Сообщение «Prod Outer» отображается, но внутренний класс вообще не работает. Любая обратная связь будет принята с благодарностью!
EDIT 1:
Это мой код, который я слушать мой собственный поток щебет и добавить значения в объект
public void onStatus(twitter4j.Status status) {
System.out.println("onStatus @" + status.getUser().getScreenName() + " - " + status.getText() + " - " + status.getCreatedAt());
obj.setMsg(status.getText());
obj.setDateTime(String.valueOf(status.getCreatedAt()));
obj.setId((int) status.getId());
prod(obj);
}
Hi Давиде, но это не создавая новый объект? Я отредактировал мои коды, PLS, посмотрите, спасибо! – Gene
Плохо, я думаю, вы, возможно, правы. lemme попробуйте это спасибо! – Gene
Если вам нужно запустить новую тему, вам нужно создать новый Runnable Object. –