프로그래밍 QnA

rhkdgus232의 이미지

pthread_create 질문입니다 급해요ㅠ


void *Print(void *threadid)
{
long t;
t = (long)threadid;
printf("print %ld\n", t);
pthread_exit(NULL);
}

메인안에

for(t=0; t<10; t++)
{
printf("main %d\n", t);
rc = pthread_create(&thread[t], NULL, Print, (void*) t);

}
pthread_exit(NULL);

이런 식인경우
main 0
main 1
.
.
.
main 10
print 9 //여기는 뒤죽박죽 ..
print 10
.
.
.
print 0

이런식으로 출력이 됩니다. 여기서 궁금한건 main이 끝날때 까지 pthread 함수 하나도 작동을 안한건가요?

yonglimlee의 이미지

프로그래밍시 어떻게 하면 시스템 load를 줄일 수 있을까요?

안녕하세요.
현재 MFC로 프로그램을 개발하고 있습니다.

아직 프로그래머를 직업으로한지 일년이 채 안되기 때문에 그 전까지는
코딩할때 그냥 되는대로 짰던것 같습니다. 허허;;
우선 돌아가기만 되면 되겠지 라는 생각으로요

그런데 테스트 중에는 죽지 않던 프로그램이 갑작스레 시현해야할 자리에서 죽는다던가 하는일이 종종
발생하더군요. 사수의 말에 의하면 '테스트때 죽어라 테스트해도 발견 안되던 버그가 시현될때는 발생하는 법이다' 라고 하더라구요. 어쨌든 그때그때 고치고 있긴 합니다.

근데 요즘 드는 생각은 어떻게 하면 프로그램 변수부터 함수를 짜는 것, 구조를 어떻게 만드는것 등등 어떤 방법이
프로그램에 load를 조금이나마 적게 걸리게 할까 입니다.

가량 0이상의 정수로 나온다면 unsigned를 쓴다거나 소수점이 필요없는 나눗셈(2진수)에 대해선 쉬프트 연산을 한다던가...

이런 방법은 어떻게 검색해야 나오는걸까요? 그냥 프로그램을 짜다보면 자연스레 체득하게 될까요?

overhawe의 이미지

eabi버전이 달라서 컴파일이 안되는것 같습니다

먼저 주변 시스템 환경입니다.

타겟 보드 : TI사의 Cortex A8기반 AM3359보드입니다.
사용한 컴파일러 : TI사의 arm-linux-gnueabihf-g++ 4.7.3
크로스 컴파일 호스트 : ubuntu 12.04.3 32bit
에러내용 : Object파일로 전부 컴파일이 된것같은데, 이것을 어플리케이션 응용프로그램으로 만들때 에러가 뜨는것같습니다.
컴파일러 플래그 : -D_REENTRANT -lpthread -lm -o
에러로그 :

goodsogi의 이미지

configure 관련 간단한 질문

안녕하세요.

인터넷에서 받은 오픈소스 라이브러리를 빌드하려고 합니다. 그런데 자바 개발자 출신이라 c/c++ 빌드에 대해서는 잘 모릅니다.
운영체제는 우분투입니다.

터미널에서 configure 파일을 실행하니 뭔가 컴파일 되는 듯 하다가 터미널이 자동으로 닫힙니다. 이건 컴파일이 실패했다는 것인가요?

그리고 configure를 실행하면 config.log가 자동으로 생성되는 것 같던데 config.log가 생성되지 않으면 configure가 아예 실행되지 않았다는 건가요?

잘 아시는 분께 도움 구합니다.

xoduddk123의 이미지

1.2.3 를 숫자별로 구분할수 있나요?

안녕하세요.

버전관리에 대해서 알아보고있습니다.

텍스트파일에

VERSION=1.0.1

이라고 들어가잇다고하면

1.0.1을 각각 명령어를 통해서 숫자구분할수 있나요 ? ? ?

VERSION=$(sed -n s/"VERSION="//p version.txt) 를 통해서 1.0.1 이라는 숫자는 뽑아내는것 까진 해보았는데 1 , 0 , 1 이렇게 각각 구분을 어떻게 할수있는지 잘 모르겠습니다.

도와주세요 ㅠ

yoonsscom의 이미지

GOOGLE DRIVE API/SDK로 웹프로그램 구현 중인데 어려움이있어 고수님들게 여쭙고 싶습니다.

구글 드라이브 API/SDK와 HTML5를 이용하여 웹앱을 구현중에있습니다.

드라이브에 있는 TEXT MIME타입의 문서의 내용을 읽어 웹앱에 출력하고자하는데 이부분에 대해서는 어떻게 구현해야할지 도저히 잘모르겠습니다.
STACKOVERFLOW에도 찾아보았지만 나오지않아 여기에 올려봅니다.

도움주신다면 사례하겠습니다. 부탁드립니다 !

Is there a way to open and read text file on googledrive using by javascript google drive api on my web?

I want to open and show the text which saved on google drive to my web app. But I can't find the way to do it.

Please help me.

kangsuag11의 이미지

peterson's solution 간단한 예제

perterson's solution에서

do{
flag[i] = TRUE;
turn = j;
while(flag[j]&&turn==j);
critical section
flag[i]=FALSE;

remainder section

} while(TRUE);

일때,

1.상호배제 만족
2. progress만족
3. bounded waiting 만족
세가지를 만족해야할 때.

flag[i]=true이고 turn ==i이면 process i 가 critical section 진입할 수 있다는데,

mkkkkm의 이미지

c언어 초보학생인데 이 코드좀 분석해주실수있나요 ㅠㅠ??

1.

include 스트드오.h
#include 스탠라이브러리.h
#include 셋점프.h
void jmp(jmp_buf env)
{
longjmp(env, 10);
}
int main()
{
int val;
jmp_buf env;
val = setjmp( env);
if( val != 0 )
{
printf("Returned from a longjmp() with value = %d\n", val);
exit(0);
}
printf("Call Jump function : ");
jmp( env);
printf(“May I see this message ?\n”);
return(0);
}

2.

#include 피스레드.h

jumirang의 이미지

Android App상 Java Process를 통해 외부실행파일(builded by ndk-build using cygwin)후 waitFor 수행시 바로 종료됨

우선 외부실행파일은 cygwin상 android ndk를 연결해 ndk-build로 컴파일한 linux c용 실행파일입니다.
주로 socket 통신이 주가되는 프로그램입니다. 아래는 간략한 테스트 코드 일부입니다.

trymp의 이미지

linux 에서 부모프로세스가 SIGCHLD 를 받는 경우는 언제인가요?

제가 리눅스에서 부모와 자식기반의 socketpair 를 이용한

통신프로세스를 만들었는데요. socketpair -> fork

자식프로세스가 죽으면 SICHLD 를 받는다는 건 알겠는데,

자식프로세스가 죽지 않는 경우에도 부모프로세스가 SIGCHLD 를 받는 경우가 있나요?

이상하게 자식 프로세스 PID 가 그대로 인데, SIGCHLD 를 받더군요.

SIGCHLD 에 대해서 잘 아시는 분 조언 좀 부탁드려요..

페이지

프로그래밍 QnA 구독하기