어떻게 이런 코드를 만들 수 있습니까?Java scheduleAtFixedDelay stop
public void start()
{
ThreadPoolManager.getInstance().scheduleWithFixedDelay(new Thread(), 1000, 1000);
}
public class Thread implements Runnable
{
int i = 0;
@Override
public void run()
{
i++;
if(i==5)
//TODO stop this thread
}
}
나는 스레드를 중지 할 후에 내가 == 5
편집 : 그것은 그런 식으로 수행 할 수 있습니다
public void start()
{
ThreadPoolManager.getInstance().schedule(new Thread(), 1000);
}
public class Thread implements Runnable
{
int i = 0;
@Override
public void run()
{
while(i!=5)
{
i++;
try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}
}
}
}
그러나 사람이 어떻게 그것을 만드는 아이디어가 여전히있는 경우 scheduleWithFixedDelay 나는 대답을 기쁘게 생각합니다 :)
그것은'scheduleWithFixedDelay'하지'scheduleAtFixedDelay'입니다. – Tudor
이 스레드를 중지 한 후에도 계속 풀을 사용 하시겠습니까? – Tudor
동시에 여러 스레드를 사용하고 싶습니다. scheduleAtFixedDelay/scheduleWithFixedDelay에 대해 죄송합니다. 나는 그것이 ScheduledThreadPoolExecutor를 재정의하고 그것을 알아 차리지 못한 클래스에서 변경된 것을 가지고있다. – user1656546