프로그래밍 QnA

jee89의 이미지

pthread_detach 관련 질문을 드립니다.

1.생성된 thread에서 pthread_detach를 하면

main thread에서 join할 필요없이 생성된 thread가 할일을 다 마치고

pthread_exit를 하는 순간 자원이 OS에 반납되는것이 맞습니까?

2. 생성된 thread에서 pthread_detach를 한후

main thread가 먼저 종료( process 종료 )할 경우

생성된 thread도 할일을 미처 마치지 않은상태라도

덩달아 죽을 것같은데, 이것을 피하려면 어떻게 하죠?

감사합니다.

jee89의 이미지

컴파일시 warning 이 왜 발생하는지 알고 싶습니다.

개발환경은 sun 5.9 / gcc 3.4.2 입니다.( 32 bit 컴파일 환경입니다. )


$>cat b.c
#include <stdio.h>

int main( int argc , char **argv )
{
    long long llstart;
    llstart = 0x3812121281282828;
    printf( "%llx\n" , llstart );
    return 0;
}

$>gcc -o b b.c
b.c: In function `main':
b.c:6: warning: integer constant is too large for "long" type

여기서, 0x3812121281282828은 십진수로 4040311686390360104 입니다.
32bit 컴파일 환경에서 long long 타입이 8 bytes이므로

nj2073의 이미지

UPnP for linux(libupnp-1.2.1)에 대해

이걸 공부하고 있는데요..
이제 막 해서...감잡았나? 아닌가? 막..이러고 있어요..
sdk는 다운했고요.
make, make install 하니 별 문제 없이 되더라구요.
근데 거기 안에 샘플이 있던데
고거 좀 돌려보고 싶은데 안되요..
무슨 셋팅을 해주고 해야 하나요?
전 지금 리눅스 한대에서 실행할라구 해서 안되는건가요? ^^;
샘플이니..간단하게 돌아가는것만 보여주나 어쩌나 싶어..모르겠네요..
저 샘플 돌릴라면 무슨 장비가 필요한가요..?
아시분덜...정보좀 공유해주세요...ㅠ.ㅠ

sungjin의 이미지

버퍼링에 관한 문제

프로그램 개발 중에 HDD 관련 데이터를 버퍼링해야 하는 문제가 생겼습니다.

주어진 시간안에 동작을 끝마쳐야 하는데, 이 동작은 Processing하는 부분과 HDD에 파일로 Read/Write하는 동작으로 이루어져 있습니다.

Processing하는 부분은 고칠수가 없고, 파일 Read/Write하는 부분은 버퍼링또는 버퍼캐쉬를 이용해서 개선시켜볼려고 합니다.

구현이 쉬운 파일 데이티 버퍼링 알고리즘이나 참조할 만한 자료가 있다면 알려주시면 고맙겠습니다.

감사합니다.

finalho의 이미지

PF_RING 패치 후 Segmentation fault 발생

안녕하십니까. 리눅스를 공부한지 얼마 되지 않은 초심자입니다.
pcap 라이브러리의 성능을 향상시키기 위하여 약 한주간에 걸쳐서 PF_RING 패치를 시도했습니다. 그러나 pcap 기반의 프로그램을 실행하면, Segmentation fault가 발생을 합니다. 다음은 제가 PF_RING 패치를 수행한 순서입니다.

    커널버전 2.4.20에서 PF_RING 패치

    1. PF_RING 패치를 다운로드 후 압축을 푼다.
    2. cd PF_RING
    3. vi mkpatch
    A. SUBLEVEL = 29 -> 20으로 수정
    4. chmod 755 mkpatch.sh
    5. ./mkpatch.sh
    6. cd workspace

puaxx의 이미지

gcc cpu architecture를 선택하여 컴팔하는 옵션이 있나요?

gcc cpu architecture를 선택하여 컴팔하는 옵션이 있나요?

전에 64비트컴퓨터에서 컴팔한 프로그램이 32비트에서 돌아갈까 라는 문제로 질문을 올렸엇는데요..

왠지 문제가 생길것 같아서...

그냥 32비트컴퓨터에서 컴팔하면 될꺼 아냐 라고 하시겠지만 --;;현제 저에게 남는 32비트 컴이 없습니다.--;;..

64비트 환경에서 32비트환경에서 사용할수 있는 프로그램을 컴팔하고 싶습니다.

dotri의 이미지

리소스 릭 잡는 요령?

에.. 윈도우 프로그램 하고 있는데요.. 루프돌면서 클라이언트 연결 받고, 연결되면 쓰레드 생성해서 데이터 몇가지 교환하는 프로그램입니다. 돌려놓으면 taskmgr 에서 "핸들" 이라고 보여지는 리소스가 점점 증가하면서, 1~2시간 후에는 클라이언트 연결을 받을 수 없게 되버립니다. 코드상에서는 핸들을 생성하는 어떤 동작도 하지 않는것 같은데.. 무한 루프로 accept() 후 CreateThread() 해주고 있습니다만, 쓰레드 안에서는 모든 자원을 깨끗히 반납하거든요. 도저히 해결하기가 곤란한데.. 리소스 잡아먹는 현상을 해결할만한 요령이랄까? 경험 같은걸 좀 들어보고 싶습니다. 코드를 보여드리진 못하니 해결해달랄수는 없고;;

Geniys의 이미지

C, C++ 작성에 어울리는 IDE를 찾고 싶습니다.

앞으로 리눅스에서 작업할 일이 많아 질것 같아서 공부를 시작했습니다.
윈도우에서는 일반적으로 VS라는 기본 인식이 있어서 인지 리눅스에서는 어떤것을 사용해야 할지 막막했습니다.

그래서 검색을 해서 찾아보니 이클립스를 추천하시던데..
솔직히 윈도우 용은 다운로드 받아서 바로 실행하면 되던데 리눅스에서는 그렇게는 안되더라구요...
그래서 시간을 내서 차차 메뉴얼을 보려는 찰라...

C, C++에 어울리는 IDE는 다른게 있고 이미 잘 사용하시는 분들이 계실것 같아서 이렇게 질문을 남기게 되었습니다.

youngminny의 이미지

비슷한 함수를 하나로 할 수 있는 방법은 없을까요?

좀 황당한 질문일지 모르겠지만, 아래와 같은 제어구문이 100여개가 있습니다. 소스랑이 무척 길죠

if (key.find("TYPE1", 0) != string::npos)
{
    strcpy(pTag->TYPE1, val.c_str());
}
else if (key.find("NEWR", 0) != string::npos)
{
    strcpy(pTag->NEWR, val.c_str());
}
...
이런식으로 무지 많습니다.
그래서 생각한 것이...
TYPE1, NEWR 등을 저장하고 for 구문을 써서 한 함수로 처리할 수 있는 방법이 없을까?? 생각중입니다.
hopeful1213의 이미지

FreeTds 를 이용하여 이미지 파일을 mssql의 image Column에 넣

고수님의 조언으로 image타입의 데이터를 가져오는 것까지 성공하였습니다.

그런데 이번엔 그림 파일을 원격에 있는 mssql의 image 타입에 넣어줘야 하는데 또 만만치 않군요.

api에서는 dbwritetext(...)라는 함수를 써야 할듯한데... 잘안됩니다.

RETCODE dbwritetext ( DBPROCESS * dbproc,
char * objname,
DBBINARY * textptr,
DBTINYINT textptrlen,
DBBINARY * timestamp,
DBBOOL log,
DBINT size,
BYTE * text
)

Send text or image data to the server.

Parameters:

페이지

프로그래밍 QnA 구독하기