본문 바로가기

All250

A 스레드로 생성한 윈도우를 다른 스레드가 파괴할 수 없다! 뭣도 모르는 상태에서 멀티 스레드 프로그래밍 하던 도중 버튼 없애는 등의 함수를 수행하는 스레드를 생성했는데 이상하게 버튼 삭제가 안되길래 DestroyWindow()와 thread에 대해 검색해 보았다. 다음과 같은 내용을 얻음 해석해 보면 다른 스레드에 의해 생성된 윈도우는 파괴할 수 없다고 한다. 즉 A 스레드로 윈도우를 생성했으면 A 스레드로만 윈도우를 지울 수 있다. 2020. 10. 17.
IP 주소 127.0.0.1 의 의미 - 루프백(loopback) or 로컬호스트(localhost) 주소 네트워크에선 특수한 IP 주소로 127.0.0.1이라는 IP 주소가 있다. 한 번씩 봤을 법한 주소인데, 이는 루프백(loopback) 혹은 로컬호스트 주소(localhost)라고도 불린다. 네트워크 통신이란 인터넷 상에 존재하는 호스트와 서로 패킷을 주고 받는 것이다. 이때, 호스트 A에서 B로 패킷을 전달하고 싶다고 생각해 보자. 그러면 A의 네트워크 계층에서 B의 네트워크 계층으로 패킷을 전송해야 한다. 패킷엔 목적지(B)의 IP 주소가 담겨 있다. 이 정보를 통해 B의 네트워크 계층에 도달한다면, B의 네트워크 계층은 수신한 패킷을 상위 계층들로 전달하고, 각 상위 계층은 알아서 패킷을 분해하고 순수 데이터(페이로드)를 수신할 것이다. 그런데 만약 목적지 IP 주소를 127.0.0.1로 설정하게 .. 2020. 10. 6.
[WinAPI] Button 삭제하기 BOOL DestroyWindow( HWND hWnd ); CreateWindow()를 통해 생성한 Button은 DestroyWindow()를 통해 제거할 수 있다. // 버튼 생성 HWND sampleButton = CreateWindow(...); // 버튼 삭제 DestroyWindow(sampleButton); 2020. 10. 3.
Heap 메모리 장단점(Windows) 내가 퍼온 출처 : egloos.zum.com/dstein/v/1785346 출처 : http://msdn.microsoft.com/library/kor/default.asp?url=/library/KOR/dntaloc/html/heap3.asp Murali R. Krishnan Microsoft Corporation 1999년 2월 소개 동적으로 할당되는 C/C++ 개체를 효율적으로 사용하고 계십니까? 모듈 간의 원활한 통신을 위해 자동화를 광범위하게 사용하고 계십니까? 혹시 힙 할당으로 프로그램 속도가 느려질 가능성은 없습니까? 이것은 혼자만의 문제가 아닙니다. 조만간 거의 모든 프로젝트가 이러한 힙 문제에 직면하게 될 것입니다. 사람들은 대개 "힙이 느릴 뿐이지 내 코드에는 전혀 문제가 없습니다.".. 2020. 9. 29.
[C++] std::priority_queue 구조 알아 보기 | 우선순위 큐, 최대힙, 최소힙 개인적으로 공부하는 내용이므로 틀린 부분이 있을 수 있습니다. 있다면 알려주세요 :) [std::priority_queue 란?] std::priority_queue는 C++의 컨테이너 어댑터(container adapter) 중 하나이다. 컨테이너 어댑터란 vector와 같은 컨테이너의 일부 기능을 제한하여 만든 컨테이너를 말한다. 대표적으로 stack, queue, priority_queue가 있다. 컨테이너 어댑터의 특징으론 반복자를 지원하지 않는다. 따라서 범위 기반 for문에도 사용할 수 없다. std::priority_queue는 우선순위 큐라고도 불리는데, 내부적으로 힙(Heap)과 비슷하게 동작한다. 따라서 최대힙 또는 최소힙이 필요할 때 해당 컨테이너를 사용할 수 있다. std::prio.. 2020. 9. 27.
[Level 2] 점프와 순간이동 | C++ 문제 설명 OO 연구소는 한 번에 K 칸을 앞으로 점프하거나, (현재까지 온 거리) x 2 에 해당하는 위치로 순간이동을 할 수 있는 특수한 기능을 가진 아이언 슈트를 개발하여 판매하고 있습니다. 이 아이언 슈트는 건전지로 작동되는데, 순간이동을 하면 건전지 사용량이 줄지 않지만, 앞으로 K 칸을 점프하면 K 만큼의 건전지 사용량이 듭니다. 그러므로 아이언 슈트를 착용하고 이동할 때는 순간 이동을 하는 것이 더 효율적입니다. 아이언 슈트 구매자는 아이언 슈트를 착용하고 거리가 N 만큼 떨어져 있는 장소로 가려고 합니다. 단, 건전지 사용량을 줄이기 위해 점프로 이동하는 것은 최소로 하려고 합니다. 아이언 슈트 구매자가 이동하려는 거리 N이 주어졌을 때, 사용해야 하는 건전지 사용량의 최솟값을 return.. 2020. 9. 23.