//>>built define(["./_base"],function(){dojo.experimental("dojox.timing.ThreadPool");var d=dojox.timing;d.threadStates={UNSTARTED:"unstarted",STOPPED:"stopped",PENDING:"pending",RUNNING:"running",SUSPENDED:"suspended",WAITING:"waiting",COMPLETE:"complete",ERROR:"error"};d.threadPriorities={LOWEST:1,BELOWNORMAL:2,NORMAL:3,ABOVENORMAL:4,HIGHEST:5};d.Thread=function(g,k){var a=this;this.state=d.threadStates.UNSTARTED;this.priority=k||d.threadPriorities.NORMAL;this.lastError=null;this.func=g;this.invoke=function(){a.state= d.threadStates.RUNNING;try{g(this),a.state=d.threadStates.COMPLETE}catch(f){a.lastError=f,a.state=d.threadStates.ERROR}}};d.ThreadPool=new function(g,k){var a=[],f=Array(g+1),h=new dojox.timing.Timer;this.getMaxThreads=function(){return g};this.getAvailableThreads=function(){return g};this.getTickInterval=function(){return k};this.queueUserWorkItem=function(e){e instanceof Function&&(e=new d.Thread(e));for(var c=a.length,b=0;b