스레드 컨텍스트를 강제로 전환하는 방법이 궁금합니다. 수면? 추천 된 방법? 몇 가지 테스트를해야합니다. 특히 ++ 작업에서 컨텍스트 전환을 강제 수행 할 수 있습니까?어쨌든 특히 ++ 같은 일부 작업에서 스레드 컨텍스트 전환을 강제로 수행합니까?
1
A
답변
2
당신은 당신이 뭘 하려는지 주위에 좀 더 컨텍스트를 줄 수
int tmp = a;
Thread.sleep(1);
a = tmp + 1;
1
Thread.yield()는 스위치가 발생할 것을 반드시 보장하지 않습니다 (실제로, 적어도 그 때 실행 대기중인 것이 없으면 아무 것도 없습니다). Thread.sleep()은 거의 그것을 거의 보장 할 것이지만, + + 연산에서 일어날 수있는 방법이 없다. 왜냐하면 기본 구현을 오버라이드 할 방법이 없기 때문이다. 실제로 어떤 일이 일어나려고합니까? 스위치가 충분하기 전이나 후에 스위치가 켜지겠습니까? 좋아하는 IDE를 사용하여 "시계"를 설정하여 수행하려는 작업을 에뮬레이션 할 수 있습니까?
관련 문제
- 1. 사용자 프로세스는 컨텍스트 전환을 거치지 않고 시스템 호출을 어떻게 수행합니까?
- 2. 작업에서 예외를 강제로 지속 작업에서 관찰하는 방법?
- 3. Linux에서 사용자 영역의 컨텍스트 전환을 강제 하시겠습니까?
- 4. 맞춤 이벤트를위한 스레드 컨텍스트?
- 5. 잠자리에 다른 스레드 강제로
- 6. 어쨌든 스레드 메소드가 완료되었는지 감지하려면
- 7. Delphi의 스레드 컨텍스트
- 8. 비동기 작업에서 새 스레드 시작
- 9. 프로그래밍 방식으로 입력에서 onchange 이벤트를 강제로 수행합니까?
- 10. 스레드 및 컨텍스트 문제
- 11. C#은 스레드 전환을 어떻게 처리합니까?
- 12. 스레드 컨텍스트 스위치 대 프로세스 컨텍스트 스위치
- 13. 어쨌든 (같은 또는 JQuery와) 자바 스크립트와 같은
- 14. 프로세스의 스레드 간 컨텍스트 전환
- 15. Visual Studio (C++)에서 중단 점을 설정하여 스레드 컨텍스트 전환을 중단 할 수 있습니까?
- 16. 스레드 컨텍스트 스위치를 그릴 도구
- 17. 스프링이있는 다중 스레드 컨텍스트 초기화?
- 18. HttpUrlConnection은 일부 헤더, 특히 Origin을 검열합니까?
- 19. 작업 간 컨텍스트 전환을 쉽게하는 데 도움이되는 습관
- 20. 스레드 내에서 어려운 작업에서 메모리 유효성 검사
- 21. 컨텍스트 전환 시간은 스레드 양자 시간에 포함됩니까?
- 22. 어쨌든 기본 브라우저가 아니더라도 링크가 강제로 IE에 열리도록 할 것입니다.
- 23. Ant4Eclipse - buildJdtProject 작업에서 일부 원본 폴더 제외
- 24. 나는 다음과 같은 구조의 일부 멀티 스레드 C++ 코드가 멀티 스레드 C++
- 25. Django의 스레드 안전 템플릿 컨텍스트 프로세서는 무엇입니까?
- 26. 중요 섹션에서 컨텍스트 전환을 수행 할 수 있습니까?
- 27. 프로세스 컨텍스트 스위치의 스레드 컨텍스트 전환이 얼마나 좋습니까?
- 28. 새 메시지에 대한 getMessage가 Spring ReloadableResourceBundleMessageSource에서 강제로 다시로드를 수행합니까?
- 29. 자바의 HashMap 때때로 일부 스레드
- 30. 일부 부스트 스레드 질문 C++
와
를 교체 시도 할 수 있습니다? 사양에 따르면 컨텍스트 스위칭은 동작에 문제가 없어야합니다 (과도한 스위칭이있을 경우에만 성능) – Bohemian
@ 보헤미안 : 내 생각에 OP는 코드가 실패하는 방식을 보여주기 위해 경쟁 조건을 시뮬레이션하려고합니다. 실패하지 않습니다. – Gabe
@ 보헤미안 : 동기화 상태가 좋지 않은 멀티 스레드 앱에서 문맥 전환이 가장 확실하게 동작에 영향을 줄 수 있습니다. 100 개의 스레드가 i = f (i) 인 것으로 생각하십시오. 여기서 f (i) = i입니다. 스레드 인터리빙 방식에 따라 1-100의 범위를 가질 수 있습니다. – James