이것은 다트에서 "멀티 스레딩"을 수행하는 방법에 대한 새소식입니다.스레드를 사용하지 않는 방법
(I 오래된 자바 개발자입니다 실례합니다 ...)
그래서 나는 SE (아래) 이런 종류의 코드를 가지고 있지만 GUI를 다시하는 것은 비용이 많이 드는이기 때문에 그래서 그것을 연기처럼 그 대신 다시 것 _onWindowResize()의 gui는 크기가 약간 안정적 일 때이를 수행하는 스레드를 시작하고 싶습니다. 예 : 1 초 동안.
스레드가 이미 시작된 경우 아무 작업도 수행하지 않습니다.
...
html.window.onResize.listen((e) => _onWindowResize());
}
_createGui() {
var shape = new Shape();
shape.graphics.ellipse(html.window.innerWidth/2, html.window.innerHeight/2, html.window.innerWidth/4, html.window.innerHeight/4);
shape.graphics.fillColor(Color.Red);
stage.addChild(shape);
}
void _onWindowResize() {
print("New window size ${html.window.innerWidth}x${html.window.innerHeight}");
stage = new Stage('stage', canvas);
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
renderLoop = new RenderLoop();
renderLoop.addStage(stage);
juggler = renderLoop.juggler;
_createGui();
}
참고 : 이것은 stagexl이 다소 나를 위해이 작업을 수행한다는 것을 알았 기 때문에 나쁜 예입니다.하지만 여하튼 질문은 일반적인 것입니다. –