프로그래밍 QnA

danielkim의 이미지

SIGNAL의 동시처리 방법

안녕하십니까?
Daniel Kim 입니다.

거의 동시점에 발생하는 SIGCHLD 의 처리 방법에 관한 의견을 구합니다.


void  process_childdead(int sig) 
{
        // to do something work that takes a litte long time  
         waitpid(... ... 
}


void main ( ) 
{
             .... 
           signal(SIGCHLD, process_childdead);
            ....
          // 여러개의 child process 를 동시에 fork한다. 
          exec_childs(.... )
}

위의 형태의 코드가 있을때 process_childdead 코드 내에 약간의 시간이

thisnome의 이미지

c코드로 작성한 so화일을 cpp에서 사용할때 에러..

client.c 라는 소켓통신 클라이언트를 컴파일하여 object 파일(client.o) 을 만들고 그다음 다음의 과정을 거쳐 so파일을 만들었습니다.

cc -Wl,-soname,libclient.so.1.0.0.1 -shared -o libclient.so.1.0.0.1 client.o

이렇게 하여 cpp을 사용하는 프로젝트에 붙이려고 하는데 다음과 같은 에러가 나옵니다.

test.o(.text+0x24): In function `main':
: undefined reference to `login(char*, char*, int, int*)' 

login 함수는 당연히 client.c에 정의되어있고, 같이 제공한 client.h에도 명시해준것은 물론입니다.

s97083의 이미지

SDL에서 OVERLAY를 두개 사용할 경우 프로그램이 죽습니다.

영상을 두개 올려야 하는데여 한 프로그램에서 하나의 영상을 overlay로

윈도에 나타내고 다시 다른 영상을 또 그리면 프로그램이 다운됩니다.

이것을 어떻게 회피해야 하는지 우회할 수 있는 방법 아시는분 있으시면 알려주세여

s97083의 이미지

[질문]오픈소스의 라이브러리를 사용하려고 하는데 안돼요~

새로 만드는 프로그램에 오픈 소스의 라이브러리를 사용하려고 합니다.

그래서 libpreview.la 파일이랑 libpreview.a 라는 라이브러리를 제가 만드려는 프로그램의 디렉토리로 카피해 와서여

라이브러리에 있는

 CPreviewAVMediaFlow* AVFlow;
           AVFlow->start(); 

라는 함수를 제가 만든 프로그램에서 불렀거든여. 그리고 컴파일시에

gcc gui_main.cpp -Llibpreview.a 하고 컴파일을 했습니다.
그런데 위의 두 코드를 라이브러리에서 읽지를 못하드라고여 ...

kernelbomb의 이미지

메모리 및 문자열 복사 함수들...

안녕하세요? 다름이 아니오라 이해 안가는 부분이 있어서 이렇게

글을 씁니다.

보통 문자열을 복사할 때, strcpy를 쓰지만, 버그가 있어서 strdup나

strncpy를 쓰게 되는데요. strdup는 복사하기 전에 포인터에 메모리를

malloc으로 할당하고 복사한다고 맨페이지에 나오더군요.

그리고 memcpy 함수를 사용하기 위해선 메모리를 영역을 확보하고

사용을 하게 되는데 기타 이런 다른점 말고 strdup나 memcpy가

특정하게 사용하면 좋은 점이 있는 건가요? 뭐 속도라든지, 기타 등등...

purewell의 이미지

bind - EACCES

bind에서 오류가 납니다.

port:7020
backlog:15
ip:0.0.0.0

위와 같이 해서 bind을 하였는데 ㅡo-) errno가 EACCES로 세팅됩니다.
(물론 bind의 리턴값이 -1 이고요)

man page에는...

Quote:
EACCES The address is protected, and the user is not the super-user.

주소가 보호되어 있다고 나오는데 무슨 말인지 모르겠습니다.
(0.0.0.0은 INADDRANY던가? 그 녀석 아닌가요?)

root 권한으로 프로그램을 실행하면 오류가 나진 않지만...

ㅡo-)a 긁적긁적...

[code:1]bool
SocketBind(SOCK_HANDLE hSocket,

hys545의 이미지

monodoc 설치시 에러

[root@localhost browser]# make install
make[1]: 들어감 `/home/hys545/MONO/monodoc/browser' 디렉토리
make[1]: Nothing to be done for `install-exec-am'.
/usr/local/lib
make[1]: execvp: /usr/local/lib: 허가 거부됨
make[1]: *** [install-assemblyDATA] 오류 127
make[1]: 나감 `/home/hys545/MONO/monodoc/browser' 디렉토리
make: *** [install-am] 오류 2
[root@localhost browser]# 

이거 원인이 궁금
icristi의 이미지

이런 비슷한 실수들 많이 하시나요? (엄청 황당하면서 재밌는(?)

다음 두 코드를 비교해 보세요.

if((fd=open("a.vv", O_WRONLY | O_CREAT | O_APPEND, 0666)<0)){
      fprintf( stderr, "open error!\n" );
      exit(1);
}

if( write( fd, buf, strlen(buf) ) < 0 ){       
      fprintf(stderr, "error\n");
      exit(1);
}       

[code:1]
if((fd=open("a.vv", O_WRONLY | O_CREAT | O_APPEND, 0666))<0){
fprintf( stderr, "open error!\n" );

이형민의 이미지

[질문] CDHtml 다이얼로그에 html 페지이지의 플래시 띄움에 대

CDHtml 다이얼로그에서 html 페이지를 띄웁니다.
그리고 그 html 페이지 안에서 플래시를 재생합니다.

CDHtml 클래스가 html페이지를 열때 지원해주는 함수가
Navigate( _T(".....") ); 입니다.

근데 저 Html페이지를 Navigate를 해도 플래시를 불러주질 못합니다.

왜 일까요?
html페이지는 잘 열리는데 그 안에 있는 플래시 파일을 불러오질 못하는 군요.

CDHtml 다이얼로그에서 띄우지 않고 그냥 html페이지를 클릭하면 잘 열립니다.

고수님들의 한수 부탁드립니

sunyzero의 이미지

SUN workshop 의 표준 지원 현황에 대해서 아시는분?

SUN workshop compiler 가 5, 6 버전의 경우 C90이나 C99같은 표준을 얼마나 지원하는지 도큐먼트나 URL을 알고 계시는 분은 알려주시면 감사하겠습니다.

SUN 사에 가서 doc을 뒤져봐도 7에 대한 이야기는 조금 있는데, 5, 6 버전에 대한 표준 이야기가 없어서 참 답답하군요. 5의 경우는 보통 몇몇 프로그램의 경우에는 에러를 툭툭 뱉어내기도 하고... 도대체 어디까지 지원하는지 모르겠네요.

페이지

프로그래밍 QnA 구독하기