public String getName() { return( thread_pool.getName()); }
public synchronized void dump() { System.out.println( "Timer '" + thread_pool.getName() + "': dump" ); Iterator it = events.iterator(); while(it.hasNext()){ TimerEvent ev = (TimerEvent)it.next(); System.out.println( "\t" + ev.getString()); } }
public synchronized TimerEvent addEvent( String name, long creation_time, long when, boolean absolute, TimerEventPerformer performer ) { TimerEvent event = new TimerEvent( this, unique_id_next++, creation_time, when, absolute, performer ); if ( name != null ){ event.setName( name ); } events.add( event ); if ( log ){ if ( events.size() > max_events_logged ){ max_events_logged = events.size(); System.out.println( "Timer '" + thread_pool.getName() + "' - events = " + max_events_logged ); } } // System.out.println( "event added (" + when + ") - queue = " + events.size()); if ( current_when == Integer.MAX_VALUE || when < current_when ){ notify(); } return( event ); }
protected void checkWarning() { if (warn_when_full) { String task_names = ""; try { synchronized (ThreadPool.this) { for (int i = 0; i < busy.size(); i++) { threadPoolWorker x = (threadPoolWorker) busy.get(i); AERunnable r = x.runnable; if (r != null) { String name; if (r instanceof ThreadPoolTask) name = ((ThreadPoolTask) r).getName(); else name = r.getClass().getName(); task_names += (task_names.length() == 0 ? "" : ",") + name; } } } } catch (Throwable e) {} Debug.out("Thread pool '" + getName() + "' is full (busy=" + task_names + ")"); warn_when_full = false; } }
public synchronized TimerEventPeriodic addPeriodicEvent( String name, long frequency, boolean absolute, TimerEventPerformer performer ) { TimerEventPeriodic periodic_performer = new TimerEventPeriodic( this, frequency, absolute, performer ); if ( name != null ){ periodic_performer.setName( name ); } if ( log ){ System.out.println( "Timer '" + thread_pool.getName() + "' - added " + periodic_performer.getString()); } return( periodic_performer ); }
lines.add(timer.thread_pool.getName() + ", " + events.size() + " events:");
System.out.println( "ThreadPool '" + getName() + "'/" + thread_name_index + ": max=" + max_size + ",sem=[" + thread_sem.getString() + "],busy=" + busy.size() + ",queue=" + task_queue.size());