실행 시간을 측정 할 때 파일에 값을 쓰는 것이 콘솔에 값을 인쇄하는 것보다 훨씬 빠르다는 것을 알고 있습니다 (프로그램을 실제로 느리게 할 수 있음). 그러나 값을 직접 파일에 쓰는 속도와 프로그램 실행 중에 LinkedList와 같은 확장 가능한 데이터 구조에 값을 저장 한 다음 프로그램 종료시 파일에 모든 값을 쓰는 것과 비교하는 것을 찾지 못했습니다. LinkedList와 같은 값을 저장하는 것이 더 빠를 수도 있지만 확실하지는 않습니다.프로그램 실행 시간 | 파일 또는 데이터 구조에 값 저장?
자체 스레드에서 실행되는 오디오 믹서 루프 시간을 조정하려고하므로 자체 타이밍이됩니다. 그러므로 가능한 한 전체 실행 시간에 거의 영향을 미치지 않는 시간을 측정하고 저장하는 기술을 사용하고 싶습니다.
또한 VisualVM과 같은 Java 프로파일 러를 살펴 보았지만 루프를 통과하는 개별 패스의 실행 시간을 보는 방법을 찾지 못했습니다.
감사합니다.
누가 그것을 읽습니까? 왜 10^6 개의 개별 함수 시간 간격을 구해서 어딘가에 저장 한 다음 1을 평균 계산하는 이유는 무엇입니까? 그냥 10^6 번 실행하고 합계를 10^6으로 나누지 않는 이유는 무엇입니까? 다른 일이 벌어지고있어, 그렇지? 이제 우리는 어딘가에 있습니다. 루틴이 스택에있는 시간의 * fraction *을 알고 싶습니다. –
마이크 Dunlavey, 응답 주셔서 감사합니다. 이것은 나를위한 것입니다. 그래서 나는 그것을 읽는 사람이 될 것입니다. 나는 그들을 하나의 숫자로 평균화하지 않을 것이다. 각 루프의 실행 시간을 실제로보고 싶습니다. 느린 시스템에서 가끔씩 발생하는 '간헐적 인'오디오 결함이 있으며 믹서가 실제로 그 지점에서 느려지는지 확인하려고합니다. 하나의 번호 만 말해주지는 않습니다. – Tekkerue
모든 I/O가 타이밍을 엉망으로 만들 것입니다. OTOH, 그래픽 업데이트 절차가 빠르게 실행되는 이유를 묻는 사람들이 있지만 때때로 일시 중지됩니다. 붙잡기가 어렵습니다. 쉬운 일은 아니지만 효과적인 방법은 최근에 충분히 리셋되지 않았을 때마다 인터럽트하는 워치 독 타이머를 사용하는 것입니다. 그런 일이 생기면 왜 일어 났는지 볼 수 있습니다. –