Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package backgroundProcesses;
- import java.text.SimpleDateFormat;
- import java.util.Calendar;
- import java.util.TimerTask;
- public class MinhaThread implements Runnable {
- @Override
- public void run() {
- Calendar cal = Calendar.getInstance();
- SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
- System.out.println("FOI, COMEÇOOU A THREAD: " + sdf.format(cal.getTime()));
- int i = 0;
- while(i < 1000000000) {
- int a = 1;
- }
- System.out.println("CHEGOU AO FIM");
- }
- }
- package backgroundProcesses;
- import java.util.concurrent.Executors;
- import java.util.concurrent.ScheduledExecutorService;
- import java.util.concurrent.TimeUnit;
- import javax.servlet.ServletContextEvent;
- import javax.servlet.ServletContextListener;
- import javax.servlet.annotation.WebListener;
- @WebListener
- public class ExecutorThreads implements ServletContextListener {
- private ScheduledExecutorService scheduler;
- @Override
- public void contextInitialized(ServletContextEvent arg0) {
- // TODO Auto-generated method stub
- scheduler = Executors.newScheduledThreadPool(4);
- scheduler.scheduleAtFixedRate(new MinhaThread(), 0, 10, TimeUnit.SECONDS);
- }
- @Override
- public void contextDestroyed(ServletContextEvent arg0) {
- // TODO Auto-generated method stub
- scheduler.shutdownNow();
- }
- }
- @WebListener
- public class Executor implements ServletContextListener {
- private ScheduledExecutorService scheduler;
- private ExecutorService executorService;
- @Override
- public void contextInitialized(ServletContextEvent arg0) {
- // TODO Auto-generated method stub
- executorService = Executors.newCachedThreadPool();
- scheduler = Executors.newScheduledThreadPool(4);
- scheduler.scheduleWithFixedDelay(new Runnable() {
- @Override
- public void run() {
- executorService.submit(new MinhaThread());
- }
- }, 0, 10, TimeUnit.SECONDS);
- @Override
- public void contextDestroyed(ServletContextEvent arg0) {
- // TODO Auto-generated method stub
- scheduler.shutdownNow();
- }
- }
- package backgroundProcesses;
- import java.text.SimpleDateFormat;
- import java.util.Calendar;
- import java.util.TimerTask;
- public class MinhaThread implements Runnable {
- @Override
- public void run() {
- Calendar cal = Calendar.getInstance();
- SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
- System.out.println("FOI, COMEÇOOU A THREAD: " + sdf.format(cal.getTime()));
- int i = 0;
- while(i < 1000000000) {
- int a = 1;
- }
- System.out.println("CHEGOU AO FIM");
- }
- }
- package backgroundProcesses;
- import java.util.concurrent.Executors;
- import java.util.concurrent.ScheduledExecutorService;
- import java.util.concurrent.TimeUnit;
- public class OutraThread implements Runnable {
- @Override
- public void run() {
- // TODO Auto-generated method stub
- System.out.println("ENTROU NA THREAD SECUNDARIA");
- new Thread(new MinhaThread()).start();
- }
- }
- package backgroundProcesses;
- import java.util.concurrent.Executors;
- import java.util.concurrent.ScheduledExecutorService;
- import java.util.concurrent.TimeUnit;
- import javax.servlet.ServletContextEvent;
- import javax.servlet.ServletContextListener;
- import javax.servlet.annotation.WebListener;
- @WebListener
- public class Executor implements ServletContextListener {
- private ScheduledExecutorService scheduler;
- @Override
- public void contextInitialized(ServletContextEvent arg0) {
- // TODO Auto-generated method stub
- scheduler = Executors.newScheduledThreadPool(4);
- scheduler.scheduleAtFixedRate(new OutraThread(), 0, 10, TimeUnit.SECONDS); //roda a qualidade a cada 5 minutos.
- }
- @Override
- public void contextDestroyed(ServletContextEvent arg0) {
- // TODO Auto-generated method stub
- scheduler.shutdownNow();
- }
- }
- ENTROU NA THREAD SECUNDARIA
- FOI, COMEÇOOU A THREAD: 11:54:33
- ENTROU NA THREAD SECUNDARIA
- FOI, COMEÇOOU A THREAD: 11:54:43
- ENTROU NA THREAD SECUNDARIA
- FOI, COMEÇOOU A THREAD: 11:54:53
- ENTROU NA THREAD SECUNDARIA
- FOI, COMEÇOOU A THREAD: 11:55:03
- ENTROU NA THREAD SECUNDARIA
- FOI, COMEÇOOU A THREAD: 11:55:13
- ENTROU NA THREAD SECUNDARIA
- FOI, COMEÇOOU A THREAD: 11:55:23
Add Comment
Please, Sign In to add comment