Я пишу приложение для Android. В основном потоке можно определить методы, а затем вызвать методы, которые помогают сохранить код в чистоте. В новом потоке, как определить методы, чтобы избежать написания всего кода в «одном блоке»? Можно ли вызвать методы, определенные в основном потоке, или вы можете каким-то образом определить их внутри нового потока? Так быть ясно, что я хочу сделать это:Как создать методы для потока?
volatile Runnable feedToBuffer = new Runnable()
{
@Override
public synchronized void run()
{
if(boolean)
{
MethodA();
}
else
{
MethodB();
}
}
и не так:
volatile Runnable feedToBuffer = new Runnable()
{
@Override
public synchronized void run()
{
if(boolean)
{
//Code that was in MethodA
}
else
{
//Code that was in MethodB
}
}
}
Возможно ли это? Я понимаю, что эта информация, вероятно, где-то там, но не нашла ее, поэтому очень благодарна за любую помощь. :)
Да, конечно, это возможно. Метод 'run' является обычным методом, он также может вызывать другие методы. – Thilo
Просто определил эти методы после запуска() ... 'new Runnable() {/ * здесь я могу создать все методы, которые я хочу * /}' – AxelH
Странно иметь метод 'synchronized' run. Почему вы это добавили? – Thilo