이것이 문제는 해결되었지만 google-fu는 충분하지 않다고 생각합니다.클라이언트에 범람하지 않고 업데이트 이벤트를 푸시합니다. 이것을하는 청결한 방법?
여러 항목의 상태를 추적하는 표가 있습니다. 서버는 원하는대로 클라이언트에 대한 변경 사항을 푸시 할 수 있습니다.
문제가 인 경우 마지막 업데이트가 5 초 미만이면 업데이트를 푸시하고 싶지 않습니다.
다른 이벤트 관리자 스레드를 만들지 않고 이것을 달성하는 가장 깨끗한 방법은 무엇입니까?
나의 현재 자상은 다음과 같습니다 : 그것은 대부분의 경우 충분 작동하지만, 분명히 마지막 업데이트 unpushed 남아있을 수
pushEvent(){
Look up the last update time
if: last update less than 5 sec ago
then do nothing
else
pushToClients
}
.
이 작업을 수행하는 좋은 방법은 무엇입니까? 필자가 생각하는 몇 가지 방법 :
- 이 모든 푸시 (예를 들어 Thread.sleep를)에 내가 체크 업데이트가 이미 예약되었습니다 할 수 있는지 그 방법을 5 초 지연을 추가합니다. 이상적이지만 아무도 마음에 들지 않습니다.
- 푸시 한 다음 doNotPush = true로 설정하십시오. 타이머를 사용하여 false로 다시 설정하십시오.
감사합니다,