0
여전히 경쟁 조건 버그가있는 복잡한 다중 스레드 프로그램을 디버깅하고 있습니다. 현재까지 비결정 코드에 대해 동일한 단위 테스트를 반복적으로 실행하여 디버깅하고 있습니다.경쟁 조건 버그 찾기
간단한 해결책은 없지만 시스템 스케줄러 (Linux)가 각 실행시 선점을 변경하여 발견 된 버그를 발견 할 수있는 휴리스틱 도구가 있습니까?
여전히 경쟁 조건 버그가있는 복잡한 다중 스레드 프로그램을 디버깅하고 있습니다. 현재까지 비결정 코드에 대해 동일한 단위 테스트를 반복적으로 실행하여 디버깅하고 있습니다.경쟁 조건 버그 찾기
간단한 해결책은 없지만 시스템 스케줄러 (Linux)가 각 실행시 선점을 변경하여 발견 된 버그를 발견 할 수있는 휴리스틱 도구가 있습니까?
나는이 작업을 수행 한 Jinx Debugger이라는 도구를 알고 있었지만 더 이상 사용할 수 없습니다.
일반적인 해결책은 코드를 신중하게 분석하고 잠금 정확성을 "증명"하는 것입니다. 이것은 약간의 예술입니다.
실험적인 접근을 위해 임의의 시간 동안 sleep하고 오랫동안 실행하는 함수 호출로 코드를 계측 할 수 있습니다. 당신의 함수는 밀리 세컨드의 무작위 수의 시간 동안 약간의 시간 동안 잠을 잘 수 있습니다.
작성한 프로그램 언어는 무엇입니까? – jgr208
언어는 C++ – tmlen
입니다. 소스에서 컴파일하거나 바이너리 만 가질 수 있습니까? – jgr208