본문으로 바로가기

파일의 IT 블로그

프로그래밍

해당되는 글 137
  • thumbnail
    프로그래밍/Python

    [Python] 현재 모니터 주사율 가져오기 & 변경 - Windows API 활용

    # pip install pywin32 import win32api import win32con # 현재 모니터 주사율 변경하기 def set_refresh_rate(refresh_rate: int) -> None: dm = win32api.EnumDisplaySettings(None, 1) dm.DisplayFrequency = refresh_rate # type: ignore iRet = win32api.ChangeDisplaySettings(dm, 0) # type: ignore if iRet != win32con.DISP_CHANGE_SUCCESSFUL: print("Failed to change the refresh rate") # 현재 모니터 주사율 가져오기 def get_refresh_rat..
  • thumbnail
    프로그래밍/Talk

    일렉트론 vue-cli-plugin-electron-builder Heap 메모리 제한 해제 실패..

    "electron:serve": "vue-cli-service electron:serve" 최근 vue-cli-plugin-electron-builder 라는걸로 개발을 하고 있는데 무슨 짓거리를 해도 vue-cli-service 로 실행하는 electron 의 Heap 메모리 제한을 해제할 수가 없습니다. ㅠㅠ Node.js 버전도 64비트인데 어떤 방법을 사용하던 간에 2GB를 넘어서 힙 영역을 점유하는 순간 프로그램이 튕겨버립니다. 정확히 일렉트론 앱이 2700MB 메모리 이상을 점유하는 순간 튕겨버립니다. "dist:build2": "cross-env NODE_ENV=production NODE_OPTIONS='--max-old-space-size=8192' vue-cli-service elect..
  • thumbnail
    프로그래밍/Talk

    일렉트론으로 만든 프로그램은 메모리 비용을 얼마나 차지할까?

    최근에 프로그램을 하나 만들었습니다. 바로 디시 글 초고속 검색기. 일렉트론 + 타입스크립트 + Vue로 만들어서 디자인도 깔끔하고 디시글 검색 속도도 극적으로 개선해서 꽤나 마음에 드는 성과입니다. 이에 관해 글을 많이 올렸으니 아마 아실 분들은 아실꺼라고 생각합니다. 그럼에도.. 이 프로그램을 돌리면서 가장 문제되는 점은 미친듯한 램 사용률입니다. Promise.all() 로 빡센 네트워크 I/O 비동기 작업을 돌리는 순간 저렇게 램 사용률이 끝도 없이 올라갑니다 ㅎ; 사실 이건 일렉트론의 문제라기보단 정확히는 Node.js 런타임의 문제 같습니다. 일렉트론으로 만든 앱 여러가지를 써봤는데 (VSCode, Discord, 지금은 망한 Twitch PC Client 등등) 일렉트론으로 만든 앱은 기본 ..
  • thumbnail
    프로그래밍/Python

    [번역] 파이썬에서 멀티 프로세싱(Multiprocessing) VS 멀티 쓰레딩(Threading) VS 비동기(AsyncIO) 비교

    참고 : 해당 글은 https://leimao.github.io/blog/Python-Concurrency-High-Level/ 을 번역한 내용입니다. 대부분 의역하였으며, 제가 이해를 돕고자 추가하거나 수정한 내용이 있을 수 있습니다. 또한 원문과 다르게 여기서 CPU 100%을 활용한다는 것은 GIL이 걸리지 않고 모든 쓰레드가 번갈아가면서 실행되며 모든 컴퓨터 자원을 사용하는 것을 의미합니다. 100% 활용하지 못한다는 것은 GIL이 걸려서 쓰레드가 1개만 실행되는 상황을 뜻합니다. 읽기전에 알아두면 좋은 내용 - 컴퓨터의 프로세스와 쓰레드 개념 [최대한 추가 설명을 덧붙였으나 아무래도 영어글이기도 하고 설명이 약간 불친절한 감이 있어서 가벼운 마음으로 읽으시는게 좋을 거 같습니다.] 개요 현대 컴..
  • thumbnail
    프로그래밍/Python

    네이버 웹툰 다운로더 v5.3-NEW (Naver_Webtoon_Downloader) / 초고속 다운로드 지원

    Python으로 제작된 웹툰 다운로더입니다. 만든진 꽤 됬는데 웹툰들 유료화 소식을 듣고 생각나서 조금 다듬었습니다. 버그가 있어서 수정하고 성인웹툰까지 다운로드 가능하게 패치했습니다. 문제 있을시 자삭하겠습니다. 메일로 질문사항 보내는 분들이 많은데 피드백은 댓글만 받으려고 합니다. 댓글로 문의사항 남겨주세요. 또한 문의는 공손하게 작성 부탁드립니다. 공손하게 작성 안하면 아예 안봅니다. 참고로 프로그램 업데이트가 잦으므로 최신 버전 매번 확인해주세요. 프로그램 미작동시 그냥 안된다고만 하지말고 어떤 웹툰 몇화에서 다운로드가 안되고 걸린다프로그램 버전은 ~~고 운영체제는 윈도우10이다 이런식으로 설명해주세요. 특징 - DOS 형식의 간결한 디자인 - 병렬처리를 통한 초고속 다운로드 지원(인터넷 상태에 ..
  • thumbnail
    프로그래밍/Etc

    티스토리 댓글창 안열림 window.open is not a function 문제 해결

    오랜만에 블로그 댓글이 달려서 몇 분한테 댓글을 달려고 했더니 댓글이 달리지 않는 이상한 문제가 발생했습니다. F12로 개발자 도구를 열어서 디버깅을 해보니깐 window.open is not a function 위와 같은 문제가 생기더라구요? 티스토리에서는 블로그 관리에 필요한 대부분의 자바스크립트 코드를 알게 모르게 common.js 라는 파일에 둬서 티스토리 기반의 블로그에 삽입 시켜 자동 로딩 시키는 듯 한데요. 솔직히 굉장히 당황했습니다. 이번에 바꾼 스킨 문제인가? 티스토리에서 뭔가 바뀌어서 버그가 생긴건가 하고 스킨 판매자님 홈페이지에 가서 댓글을 작성했는데 거기선 또 잘되더라구요. 일단 문제에 대해 조금 더 자세히 알아보자면 댓글창에서 수정, 삭제 또는 답글 버튼을 누르면 아무것도 동작하지..
  • thumbnail
    프로그래밍/Talk

    Electron, Vue2 + Vuetify, TS, Node.js를 활용해 다시 만든 디시 글 검색기 #1 - 개발중

    이전 글에서 파이썬으로 동기적 코드로 만든 디시 글 탐색기를 일렉트론이랑 Node.js로 다시 만든다고 했었는데 생각보다 빨리 개발을 완성하였습니다. 사실 디시 글을 비동기적으로 탐색하는 코드보다 Vue 2랑 일렉트론, 뷰티파이, 타입 스크립트 무려 4개의 기술 스택을 한꺼번에 프로젝트에 적용하느라 훨씬 고생이 많았습니다. Babel 이나 ts-node나 각 기술 의존이 꼬이고 꼬여서 예전에 Vue2, 뷰티파이, 자바스크립트만 써서 웹 개발했을때랑 차원이 다르게 삽질을 많이 했습니다 ㅠㅠ 일단은 기능 자체는 잘 작동하며 Vuetify 를 사용해서 공대 감성도 전혀 없고 타이틀바도 Vuetify 에서 지원하는 앱바를 사용해서 구진 윈도우의 타이틀 바 대신 이쁜 앱 같은 디자인을 가지고 있습니다. 애초에 파..
  • thumbnail
    프로그래밍/Talk

    Electron, Vue, Typescript으로 개발을 도전 해보려 합니다

    예전에 파이썬으로 작성한 디시인사이드 글 검색기가 있습니다. 아직도 잘 작동하고 디시에서 글 검색할때마다 실제로 유용하게 사용하고 있는 상태입니다. 문제는 디시인사이드 서버가 느린데, 비동기 형태의 코드가 아니라 동기 멀티 쓰레딩 방식이라 검색이 좀 많이 느립니다. 실제로 디시에서 야구갤러리를 기준으로 모든글을 검색하려면 요청을 약 1000번 정도 보내야 하는데 비동기, 멀티쓰레딩, 멀티 프로세싱 등 여러가지 방법을 사용해본 결과 asyncio 모듈을 사용한 비동기 요청이 가장 빨랐으며 모든 페이지 탐색 및 글 내용 정제에 40초 정도 소요됩니다. 디시 서버가 네이버 같은 사이트 보다 한 3~4배 정도 느려서 이 이상 속도를 개선하기가 어렵더라구요. 일단은 asyncio 로 작성한 비동기 단일 쓰레딩 코..
    이모티콘창 닫기
    울음
    안녕
    감사해요
    당황
    피폐

    이모티콘을 클릭하면 댓글창에 입력됩니다.