사용자가 시작한 QMainWindow 닫기 이벤트와 Linux의 SIG_KILL 또는 Windows의 TerminateProcess()에 의한 비정상 종료를 어떻게 결정할 수 있습니까?
긴급 성의 차이가 있기 때문입니다.
사용자 또는 사용자가 종결을 요구할 수 있다고 생각할 수 있습니다.
하지만 사용자가 다음 치명적인 중단 시도를 할 때까지 최대한 빨리 중간 결과와 현재 상태를 저장해야합니다.
closeEvent()에서 마우스 위치를 분석하는 방법을 알아낼 수 있습니다. 그러나 작업 표시 줄 모양에 따라 다릅니다. 앱을 최소화되지 않은 상태로 설정하고 다음 사용자 작업을 기다릴 수 있습니다. 그러나 이는 중단 사건에서 좋은 행동이 아닙니다. 사용자는 다음 치명적인 중단 작업을 시도하거나 저장 시간을 잃을 수 있습니다.
안부, 겐 나디Qt QMainWindow는 사용자가 종료하고 시스템을 통해 중단 함을 의미합니다.
0
A
답변
2
하면 응용 프로그램이 SIGKILL
를 수신하는 경우, 그것은 아무것도 할 수있는 시간이 것입니다. 그 자리에서 종결됩니다. 신호를 포착하거나 차단할 수 없습니다. 따라서 SIGKILL을 정상적인 응용 프로그램 종료와 "차별화"할 수는 없습니다. 강제 종료 된시기를 알 수는 없습니다. (TerminateProcess()
과 동일)
정상적인 응용 프로그램 종료 중에 작업해야하는 경우 정리 루틴을 QCoreApplication::aboutToQuit()
신호에 연결해야합니다. 문서가 정확히 무엇을 위해 설계되었는지 확인하십시오.
관련 문제
- 1. Qt 500ms마다 프로그램 중단
- 2. csv 파일에서 streamreader를 통해 데이터를 읽는 방법 .. 문자열로 사용해야 함을 의미합니다.
- 3. android는 사용자가 기기 시간을 수정 함을 감지합니다.
- 4. QT : 사용자가 작업을
- 5. QGraphicsItem에서 QGraphicsScene으로 이벤트 전달 중단 QT
- 6. 사용자가 20 분 동안 비활성 상태이면 세션을 종료하고 싶습니다. PHP
- 7. 종료하고 계속 작동 시키십시오.
- 8. opencv에서 K- 클러스터링을 의미합니다.
- 9. 사용자가 이미 사용자 등록시 데이터베이스에 존재 함을 감지합니다.
- 10. PDF를 변조 함을 감지합니다.
- 11. 사용자가 페이지/시스템을 종료하면 자동으로 다시 쓰기
- 12. WP7 응용 프로그램에서 사용자가 시스템을 인식하도록하려면 어떻게합니까?
- 13. 여러 사용자가 추천 시스템을 사용하지 못하도록 막으십시오.
- 14. 사용자 등급 시스템을 만들려면 어떻게해야합니까?
- 15. K- 코딩 구현을 의미합니다.
- 16. 안드로이드의 코드를 통해 에뮬레이터를 종료하고 재부팅하는 방법은 무엇입니까?
- 17. 흐름은 반복없이 종료하고
- 18. 활동을 강제로 강제로 종료하고 스택에 남아있게하려면 어떻게합니까?
- 19. Epson TM88iv를 통해 Ubuntu의 Firefox에서 금전 함을 꺼내십시오.
- 20. 금전 함을 열지 않고 POS .NET을 통해 인쇄
- 21. Adobe Air에서 시스템 중단 중단
- 22. Java를 통해 Android 파일 시스템을 다시 마운트
- 23. 중단 점이없는 디버깅 세션 중단
- 24. 스위치를 통해 이더넷을 통해 호스트에 임베디드 시스템을 연결하십시오.
- 25. Qt 생성자와 부스트 파일 시스템을 연결할 수 없습니다.
- 26. 여러 사용자가 ssh를 통해 웹 사이트를 편집합니다
- 27. '계산 기능'은 w.r.t를 의미합니다. 쿠다?
- 28. 열은 한정된 범위의 행을 의미합니다.
- 29. k는 교차 유효성 확인을 의미합니다.
- 30. perl 표현이 $ a의 의미를 의미합니다.
새로운 질문이 있으시면 새 질문을하십시오. – Mat