ExtJs 학습 노트(2) TaskRunner

1903 단어 ExtJs
주요 두 가지 기능: 실행 횟수의 제한, 실행 시간의 제한(즉 시간 초과).TaskRunner는 타이머의 시간 분할 실행 방법을 이용하여 비교적 간단하고 쉬운 병행 운행 메커니즘을 제공하는 데 목적을 둔다. 그 목적은 일반적인 시간 지연 작업 뿐만 아니라 여러 가지 작업도 동시에 진행할 수 있기 때문이다.이렇게 되면 임의의 독립된 임무는 언제든지 시작되고 서로 독립적으로 실행될 수 있다.그렇다면 다선정의 개념과 약간 가깝지 않을까요?사실은 다 그렇지는 않다. 비록 ExtJS 공식 문서가'다중 스레드로 한 개 이상의 임무를 수행할 수 있는 능력을 제공한다'는 개념을 제기했지만 진정으로'스레드(thread)'를 대체하는 것이 아니라'시뮬레이션'일 뿐이라는 것을 설명해야 한다.브라우저 인터페이스든 JS가 실행될 때든 "단일 스레드 모델"범위에서 벗어나지 않는다는 것을 알기 때문에 우리는 고작 시뮬레이션 스레드의 한 수단일 뿐이라고 생각한다.내부 구조에서 수조tasks[]로 작업 대상의 대기열을 유지합니다.
다중 스레드의 정시 서비스를 제공할 수 있으며, 이 종류는 다중 스레드 임무의 관리를 제공한다.Ext.TaskMgr을 통해 TaskRunner의 실례를 만들 수 있고, 그 다음에 Ext.util을 만들 수도 있습니다.TaskRunner의 인스턴스입니다.이 종류는 모든 임무나 서비스가 언제든지 독립적으로 운행할 수 있고 다른 임무나 서비스의 운행에 영향을 주지 않도록 보장할 수 있다.
간단한 인스턴스는 다음과 같습니다.
var task = 
{
	run: function() 
	{
		Ext.fly().update(new Date().format('g:i:s A'));
	},
	interval: 1000 // 
}

var runner = new Ext.util.TaskRunner();

runner.start(task);

(1) 구조 함수
함수를 구성하고 매개 변수 지정을 통해 정시 작업을 만듭니다
TaskRunner([interval])
interval: 선택할 수 있는 매개 변수입니다. 새로 정해진 작업을 만들 때, 이 스레드가 실행되는 시간 간격으로 interval 밀리초를 지정할 수 있습니다. 이 매개 변수를 선택하지 않으면 기본적으로 10밀리초로 지정합니다.
(2) 스레드 시작 ()
start(task)
task:
선택 가능한 매개 변수입니다. task가 비어 있지 않으면 다음과 같은 속성이 있어야 합니다.
run: 작업이 어느 시간에 실행되는지 지정하는 함수입니다. 실행되는 역할은 반드시 지정해야 합니다.
interval: 작업이 연속적으로 실행되는 시간 간격을 지정합니다.
scope:task 대상run 함수의 역할 영역입니다.
duration: 라인을 실행하기 전에 멈추는 시간입니다.
repeat: 반복 실행 횟수입니다.
(3) 스레드 중지 ()
stop(task)
지정한 작업 라인을 정지합니다.
(4) 모든 스레드 stopAll 중지()
stopAll()
모든 작업 라인을 정지합니다.
인스턴스 적용:
var task = {
	run:function(){
		Ext.Msg.alert(" "," ! 5 ! 10 !");
	},
	interval:1000,
	repeat:5,
	duration:10000
};

var runner = new Ext.util.TaskRunner();

runner.start(task);

runner.stopAll();

좋은 웹페이지 즐겨찾기