Microsoft MVP성태의 닷넷 이야기
WinForm의 로딩속도 관련 질문입니다 [링크 복사], [링크+제목 복사]
조회: 1577
글쓴 사람
이건우
홈페이지
첨부 파일
 

안녕하세요 예전 ocx랑 웹소켓관련 질문드리고 오랜만에 뵙습이다. 다름 아니라 윈폼의 창자체가 너무 늦게 떠서 고민입니다
웹에서 URL 프로토콜로 프로그램를 실행시키면 pc사양이 안좋을 경우 3~4초 정도 있다가 창이 뜨고 작업이 실행되는데
이 3~4초 사이에 아무 액션이 없다보니 문제가 되고있습니다.
Load에서 하던 작업들을 Shown으로 옮겨봐도 여전합니다
아마 웹뷰나 한글ocx등을 준비하는데 걸리는 시간으로 생각하고 있습니다. 그래서 생각해본 방법이 다음입니다.
1.splash screen(로딩바) 띄운 후 스레드를 이용해 뒷작업진행
2. 일단 윈폼창부터 띄우고 나머지 작업
1번은 스레드 경험 이용이 없어서 후순위이고.. 2번은 가능여부를 모르겠습니다. 더 나은 방법이 있다면 추천 부탁드립니다

읽어주셔서 감사하고 추석 잘 보내시길 바랍니다~~








[최초 등록일: ]
[최종 수정일: 9/27/2023]


비밀번호

댓글 작성자
 



2023-09-27 04시50분
1번이 더 좋습니다. 생각만 조금 바꾸시면 되는데요, 뒷작업을 (별도) 스레드로 하지 마시고, 오히려 splash screen을 별도 스레드로 띄워 두시면 됩니다. 그럼 사용자는 당연히 기다려야 한다는 것을 인지하고 원래의 작업도 방해 받지 않고 완료 시점에 splash screen을 닫게 만들면 됩니다.

그렇게 보면 어려운 작업이 아니므로 1번으로 하세요. ^^
정성태
2023-09-27 05시30분
넵 스레드 쪽 공부해보겠습니다 감사합니다~
이건우

[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5923정두호12/4/2023186MSSQL 데이터 전송과 공유폴더의 데이터 전송 차이점 [1]
5922He...10/27/20232708C++의 double pointer를 C#에서 구현하는 방법이 잘 안됩니다. [3]
5921한예지10/3/20233123마샬링 정의 및 목적이 궁금합니다. [5]
5920한예지10/3/20231822C#과 WIN32 API 관계 질문드립니다. [4]
5919이건우9/27/20231577WinForm의 로딩속도 관련 질문입니다 [2]
5917한예지9/14/20231699동기화 도구 질문 있습니다. [4]
5916한예지9/3/20231837Thread.Sleep(500), await Task.Delay(500), Task.Delay(500) 차이점이 궁금합니다. [2]
5915한예지8/30/20231740비동기 코드를 for 문 안에 작성한 경우 제어 변수가 올바르게 동작하지 않는 이유가 궁금합니다. [3]
5914한상욱8/11/20231713.net wpf에서 skiasharp 의 skelement 를 canvas로 사용 하고 있습니다. [1]
5913김태우8/10/20231917지역변수로 이해하는 메서드매개변수 게시글 댓글 [3]
5912guest4/25/20233492[참고 - 초보용] Sqlite 디비는 double이 없고 Real이 대신합니다 [3]
5911guest4/24/20232371Form1.cs와 외부 class.cs와 통신 (static async method포함) [4]파일 다운로드1
5910guest4/24/20232142Async 메서드와 try~catch [1]
5909guest4/22/20232370Visual Studio 구매 시(1인 개발자) [4]
5908guest4/22/20232279텅빈 원그리기 [5]
5907민성4/21/20232090안녕하세요 서버 백업 문제에 대해서 [2]
5906guest4/21/20232173Dispatcher 서비스 구현 질문 [1]
5905guest4/20/20232212tabControl의 tabPage가 여러 개일 때 순서를 바꾸기가 까다롭네요 [5]
5904guest4/18/20232264[신규자료첨부] DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [4]파일 다운로드1
5903guest4/18/20231945fileSystemWatcher 이벤트 관련 질문입니다 [2]
5902guest4/17/20232398c#으로 USB 관련 질문 [2]
5901guest4/17/20232147내솔루션 판매 시 1.0.0.0 폴더와 Sqlite 배포 [5]
5900guest4/17/20233003DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [2]파일 다운로드1
5899guest4/17/20232295Dictionary와 Linq [4]
5898차가워4/17/20232098CNTK 교육 문의 [1]
[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...