2013-10-03 2 views
7

wpf로 간단한 응용 프로그램을 만들었습니다. 이상한 동작을 발견했습니다. 응용 프로그램에는 두 개의 버튼이 있고 관련이없고 매우 간단한 동작이 있습니다. 내가 시작할 때마다 버튼을 처음 클릭하는 데 2 ​​~ 3 초가 걸립니다. 첫 번째 클릭 만 느립니다. 이후의 클릭은 간단한 행동으로 예상대로 거의 즉각적입니다. 나는 Google을 검색 했으므로 아무도 같은 문제를 겪고있는 것 같지 않습니다. 응용 프로그램의버튼의 첫 번째 클릭이 느립니다.

세부 사항은 다음과 같습니다

SQL 서버 2008

할 NorthWind DB;

Linq에서 SQL 자동 생성 클래스;

Customers 표를 DataGrid로;

버튼 1 OnClick 이벤트 : Context.SubmitChanges();

단추 2 Onclick 이벤트는 MainWindow 클래스의 부울 DependencyProperty를 번갈아 나타냅니다.

보시다시피 설정은 매우 간단합니다. 단추 하나 하나를 클릭 할 때마다 느린 경우 WPF 성능 문제가 있다고 생각했습니다. 이상한 점은 내가 시작할 때마다 첫 번째 클릭 만 느리게 반응하고 다른 것은 정상적이라는 것입니다.

+0

에서 찾을 수 있습니다. JIT 컴파일러는 첫 번째 클릭시 바이트 코드를 컴파일해야합니다. 그것은 메모리에 캐시 되었기 때문에 컴파일 된 네이티브 코드를 다른 클릭에 대해 실행할 수 있습니다. 이렇게하면 첫 번째 클릭 이후의 클릭이 훨씬 빨라집니다. – Rohan

+0

일부 네트워크 작업에서이 문제가 발생하는 것을 보았습니다. 처음에는 호스트 이름 조회와 관련이 있다고 생각했지만 OS에 의해 캐싱되어야했지만 응용 프로그램이 실행될 때마다 이런 일이 발생했습니다. 당신은 그것이 네트워크가 아닌 관련 작업으로 일어난다 고 설명합니다. – Steve

+0

@Rohan 나는 그것에 대해 생각했지만 응용 프로그램을 시작하기 전에 편집을 완료하면 안됩니까? 그렇지 않은 경우이 동작을 강제로 수행 할 수있는 방법이 있습니까? – jose

답변

9

대답없는 질문 목록에서이 질문을 얻으려면 여기에 내 발견 사항이 있습니다. 이것은 IntelliTrace의 제스쳐 캡처와 관련하여 알려진 문제입니다. 제스처 캡처를 끄면 (도구> -> 옵션 -> IntelliTrace -> IntelliTrace 이벤트) 문제가 완전히 사라집니다. 자세한 내용은 this answer

+0

더하기 하나. 이것은 약 1 시간 동안 나를 괴롭혔다! –

관련 문제