프로그래밍 QnA

qkqk2의 이미지

ListView ImageList 관련 질문입니다.

HICON 여러개를 HBITMAP에 일렬로 직접 그려서
ListView의 ImageList에 로드한뒤에 ListView Item에 이미지를 보여주려고합니다.
근데 이미지가 계속 검정색으로만 보이네요
아래는 제 코드입니다.

// 경로에 해당하는 파일 컨텐츠들을 가져온다.
vector<pair<CString,HICON>> vContents = GetFolderContents(path);
if (!vContents.emprt())
ListView_DeleteAllItems(m_hListView);

HDC hDC = CreateCompatibleDC(NULL);
UINT cx = vContents.size() * 32;
UINT cy = 32;

HBITMAP hBitmap = CreateBitmap(cx, cy, 1, GetDeviceCaps(hDC, BITSPIXEL), NULL);
HBITMAP hOldBitmap = (HBITMAP)SelectObject(hDC, hBitmap);

익명 사용자의 이미지

리눅스 질문 드립니다.

리눅스 bash 질문 드립니다.

mg2000의 이미지

푸시는 어떤 원리로 동작하는 걸까요?

푸시 구현에 대해서 찾아보면 대부분 서버에 클라이언트 아이디 같은 것을 서버에 등록해 두고...

서버로 보낼 아이디와 메시지 전달하면, 서버가 해당 아이디에 해당하는 클라이언트로 매시지를 보낸다 뭐 이런식인데...

정작 서버가 클라이언트로는 어떻게 메시지를 보낼까요?

클라이언트가 소켓을 연결해 놓는 것도 아닌 것 같고...

자동응답기처럼 클라이언트가 주기적으로 서버한테 메시지 온거 있나 주기적으로 체크하는건지...

이러면 부하가 너무 걸리는거 아닌가 싶기도 하고 말이죠.

서버가 클라이언트한테 푸시 메시지를 어떻게 보내는 걸까요?

익명 사용자의 이미지

cpp 질문

#include <string>
#include <iostream>
std::string str_func(){
        std::string a = "aaaa";
        return a;
}
void display_string(const char * buf){
        std::cout << buf << std::endl;
}
int main(void) {
    const char *str = str_func().c_str();
    display_string(str);
    std::string b = "bbbb"; //uaf
    display_string(str);  /* Undefined behavior */
}

여기서 2번째 display_string(str)에 왜 aaaa가 출력되는지 모르겠습니다.

Maylop@Google의 이미지

파이썬 .join 질문이 있습니다..


quiz = [116, 66, 85, 81, 93, 120, 81, 83, 91]
for i in range(len(quiz)):
quiz[i] ^= 0x30

quiz = ''.join([chr(_) for _ in quiz])

이런 코드인데 마지막 줄이 어떻게 돌아가는지 잘 모르겠습니다

tkdgus2916의 이미지

운영체제 프로그램이 항상 같은 결과를 보이지 않을 때 디버깅 방법

Pintos라는 운영체제 과제를 하는 중인데요

SystemCall을 구현하는 부분을 하고 있습니다. 그중에서 exit systemcall을 구현하고 있는데요

Userprogram에서 exit을 호출하는 프로그램을 운영체제에서 실행하고 결과를 확인하는 중인데요

프로그램을 여러번 실행했을때 대부분은 exit 내부의 print가 출력되어서 정상적인 작동을 하는데,
한번씩 print가 출력되지 않고 그냥 종료가 되어버립니다.

이러한 경우에 해결 방법이나 디버깅 방법이 있을까요? gdb를 사용한다고 해도 어떤 타이밍에 예외 결과가 나올지 모르는데, 계속 노가다 하는 방법 밖에 없는 것인가요?

phyljh의 이미지

프로세스ID와 쓰레드ID의 차이점에 대해 문의드립니다.

top나 htop으로 PID를 확인해보면 프로세스 내에서 생성한 쓰레드도 별도의 PID값을 가집니다.

그래서 그동안 쓰레드도 별도의 프로세스처럼 동작하는구나 하고 생각을 해왔는데
getpid()함수를 쓰레드함수내에서 호출하니 쓰레드를 생성한 프로세스의 pid를 리턴하더군요. 제가 하려고 했던것은 쓰레드 함수에서 그 쓰레드의 우선순의를 변경하려고 했던건데 이것때문에 삽질을 하다가 질문드립니다.

쓰레드에서 쓰레드ID를 얻는법이랑 htop이나 top에서는 PID가 쓰레드도 모두 각각의 PID를 갖는데 왜 getpid()는 프로세스의 값을 리턴하는지에대해 답변좀 부탁드립니다

kkb의 이미지

자바 스크립트 설치?

안녕하세요
파이썬으로 웹페이지 내에 채팅 프로그램을 넣고 있는데
서버 프로그램은 파이썬이고
클라이언트는 웹페이지 (HTML, 자바스크립트 등)입니다

인터넷에서 파이썬 서버 프로그램들과 웹 클라이언트들을 참고해서 만들고 있는데
인터넷에서 동작 확인된 코드라고 올라온 코드들도
돌려보면 전부 대화내용창이 안뜹니다.

Guest01 : 하이
Guest02 : 응 하이
그러니까 이런 대화내용창.
대화입력창이랑 입력버튼 등은 뜨는데(그것들은 HTML 태그니까)
대화내용창(이것은 자바스크립트)이 아예 안 떠요.

빈 공간으로 뜨는 것도 아니고 아예 코드가 없는 것처럼 안나타나요.
인터넷에 올라온 다른 예제들도 전부 대화내용창 부분만 안뜨는 것 보면

phyljh의 이미지

리눅스에서 쓰레드를 SCHED_FIFO로 설정하면 이 쓰레드에게 최우선으로 cpu가 할당되나요?

리눅스 스케쥴링 관련하여 궁금한게 있어 질문드립니다.


리눅스에서 디폴트 스케쥴링 정책은 그냥 라운드로빈 방식(SCHED_OTHER)으로 알고 있습니다.

그리고 그 방식위에서 우선순위를 높이거나 줄이려면 nice 값을 낮추거나 높이면 되는걸로 알고 있습니다.

그런데 제가 쓰레드를 여러개 만들어서 돌릴때 각각의 쓰레드의 스케쥴링 정책을 예를 들어 pthread_setschedparam 함수를 사용하여 SCHED_FIFO에 우선순위를 49로 주었다 치면 htop으로 해당 프로세스 확인시 PRI 는 -50으로 나오고 NI는 0으로 나옵니다.

제가 헷갈리는 것은 다른 여러 프로세스들은 디폴트스케쥴링인 SCHED_OTHER로 동작하는데 특정 프로세스와 쓰레드들만 SCHED_FIFIO로 하는게 가능한것인지.....그렇다면 리눅스커널스케쥴러는 다른 프로세스나 스레드는 RR로 돌리면서 SCHED_FIFO로 세팅한 프로세스와 스레드는 최우선적으로 cpu할당하는것인지 문의드립니다.

페이지

프로그래밍 QnA 구독하기