
주식할때 시계 확인할때 쓰려고 '윈도우 전용' 으로 시계 위젯 하나 만들었습니다
최신 C# 14와 Win32 + Direct2D + WinRT를 이용해서 최대한 가볍게 만들었고요.
Direct2D는 디바이스 세팅을 GPU로 처음 할당했는데.. 이정도는 CPU Draw해도 DWM에서 알아서 다 해줄꺼라 VRAM 굳이 안쓰고 WARP로 세팅 했습니다. GPU렌더링 하고 싶은 분은 소스코드 받으셔서 GPU로 세팅하고 컴파일 해서 쓰시면됩니다. 둘다 테스트 해봤는데 전혀 차이 안나고 괜히 몇MB라도 VRAM까지 쓸필요가 있나 해서.. CPU렌더링으로 바꿨습니다.
런타임시 메모리 할당은 0바이트로 최대한 줄였습니다. (gc zero)
실행 메모리도 23MB정도로 최대한 줄였습니다.
실행파일 크기는 5메가 정도이고 테마 이미지들도 다 포함입니다.
마음같아서는 C+Win32로 전체를 작성해서 10MB 이하로 만들고 싶은데.. 뭐 그냥 C#으로 했습니다. 어짜피 NativeAOT도 훌륭해세요..
CPU 할당은 부드럽게 시침을 하지 않는 이상 사실상 0%에 가깝도록 제작했습니다.
AVX2 명령어셋을 이용하여 하스웰 이상의 CPU에서 돌아가고 Native AOT빌드 테스트를 통과하여 더빠르고 작은 메모리로 실행이 가능합니다.
주요 알람 기능이나 이런것도 나중에 넣을까 생각중인데.. 소스코드도 공개하니 필요하신분은 AI에게 시키셔도 되요..ㅋㅋ
참 절대 타인에게 공개하시거나 파시거나 github에 올리시거나 하시면 안됩니다. 그냥 혼자 쓰시거나 참고만 하시면 됩니다.
열어보시면 아시겠지만.. 앱아이콘도 커비에요..
스킨은 인터넷에서 굴러다니는거 캡쳐한거라. .문제가 되면 삭제 해야 할수도 있어요 -_-;;
진짜 그냥 혼자 쓰려고 한거라..
아! 혹시 개발의 연속성을 위해서 CLAUDE.md 파일 필요하시면 보내드릴수 있어요.