wpf로 간단한 응용 프로그램을 만들었습니다. 이상한 동작을 발견했습니다. 응용 프로그램에는 두 개의 버튼이 있고 관련이없고 매우 간단한 동작이 있습니다. 내가 시작할 때마다 버튼을 처음 클릭하는 데 2 ~ 3 초가 걸립니다. 첫 번째 클릭 만 느립니다. 이후의 클릭은 간단한 행동으로 예상대로 거의 즉각적입니다. 나는 Google을 검색 했으므로 아무도 같은 문제를 겪고있는 것 같지 않습니다. 응용 프로그램의버튼의 첫 번째 클릭이 느립니다.
세부 사항은 다음과 같습니다
SQL 서버 2008할 NorthWind DB;
Linq에서 SQL 자동 생성 클래스;
Customers
표를 DataGrid로;
버튼 1 OnClick
이벤트 : Context.SubmitChanges()
;
단추 2 Onclick
이벤트는 MainWindow
클래스의 부울 DependencyProperty를 번갈아 나타냅니다.
보시다시피 설정은 매우 간단합니다. 단추 하나 하나를 클릭 할 때마다 느린 경우 WPF 성능 문제가 있다고 생각했습니다. 이상한 점은 내가 시작할 때마다 첫 번째 클릭 만 느리게 반응하고 다른 것은 정상적이라는 것입니다.
에서 찾을 수 있습니다. JIT 컴파일러는 첫 번째 클릭시 바이트 코드를 컴파일해야합니다. 그것은 메모리에 캐시 되었기 때문에 컴파일 된 네이티브 코드를 다른 클릭에 대해 실행할 수 있습니다. 이렇게하면 첫 번째 클릭 이후의 클릭이 훨씬 빨라집니다. – Rohan
일부 네트워크 작업에서이 문제가 발생하는 것을 보았습니다. 처음에는 호스트 이름 조회와 관련이 있다고 생각했지만 OS에 의해 캐싱되어야했지만 응용 프로그램이 실행될 때마다 이런 일이 발생했습니다. 당신은 그것이 네트워크가 아닌 관련 작업으로 일어난다 고 설명합니다. – Steve
@Rohan 나는 그것에 대해 생각했지만 응용 프로그램을 시작하기 전에 편집을 완료하면 안됩니까? 그렇지 않은 경우이 동작을 강제로 수행 할 수있는 방법이 있습니까? – jose