프로그래밍 QnA

leolo의 이미지

[질문] DB 질의시 락이 걸렸습니다.

아래의 코드는 handler 쓰레드 여러개, receiver 쓰레드 한개를 띄우는 예제입니다.
receiver는 하나로, 데이터를 받어서 큐에 넣습니다.
handler는 여러개로 쓰레드 각각 connection을 만듭니다.
문제는 thread id가 pid[0]인 쓰레드가 데이터를 큐에서 팝하고 DB를 질의했습니다. 여기서, 락이 걸렀습니다.

그렇다고 해서, 다른 데이터가 큐에 들어오는 것은 처리되지 않나요. 쓰레드는 pid[1], pid[2] 등 여러개가 있잖아요.
저는 지금 DB에 락 걸리는 상황이 발생되지 않아 그냥. pid[0] 쓰레드가 sleep(100) 되도록하고 다음 데이터를 보내봤습니다.

vudghkzm의 이미지

자바 혹은 c++에서 변수나 객체 선언은 주로 어디서 하나요?

C는 변수의 선언을 반드시 코드 처음 부분에다가 해야 하지만 자바 혹은 C++은 코드 중간중간에 할 수가 있는건 다들 아시고 계실건데요..

그래서 저는 그때 그때 변수나 객체가 필요할 때 마다 선언하고 사용하고 있긴 한데요. 나중에 코드를 볼때나 다른 코드를 분석할 때 선언이 중간중간에 되어 있으면 보기가 약간 불편할때가 있더라구요..

많은 분들은 주로 선언을 윗 부분에 몰아서 하시는 지 아니면 그때 그때 하시는 지 궁금하네요..

vudghkzm의 이미지

c++ 코드의 플로우차트를 쉽게 그릴 수 있는 방법이 있나요?

c++로 작성된 간단한 프로그램이 있습니다.
이 프로그램의 플로우 차트를 쉽게 그릴 수 있는 방법이 있나요?

혹은 함수가 어떤식으로 call 되는지 tree나 graph 형식으로 뿌려줄 수 있는 방법이 있나요?

kyum의 이미지

비트연산자에 관한 질문입니다.

안녕하세요.
제가 2byte에 각각 3bit, 4bit, 9bit를 넣으려고 합니다.

3bit를 넣고서 4bit를 저장하려고 하는데

data[2] = (char)(number << 3);

로 하면 안되더라구요. 제가 잘 못한거니 안되는 거겠지만..

어떻해야할지.. 잘 몰라서요. 제 머리의 한계는 저거라서요.

너무 초보적인 질문을 드렸다구 구박하지 말아주세요. ㅠ.ㅠ

soylove의 이미지

답답해죽을꺼 같습니다 @.@ 소켓통신

어제 질문을 올렸더니 많은 분이 답변을 주셨는데요.. 여전히 안되서요...혹시 서버쪽에 문제때문인지 싶어 서버쪽, 클라이언트쪽 소스를 모두 올려봅니다
도움좀 주세요.. 만 하루째 이거가지구 씨름중...ㅡ.ㅡ;;;;;
에러는 전혀 없는데
서버를 수행 ./soc1(이게 서버파일실행소스입니다)하고나서
./soc4(클라이언트소스)하면 클라이언트쪽에서 connect가 제대로 안될때 프린트하는 "no"가 출력됩니다..

도움좀 주십쇼..;;;;

/*******서버쪽**********/
/* simple socket program*/

kknd345의 이미지

[어셈블리어] 모르는 것좀 가르쳐 주세요

1.어셈은 대소문자 구분 있습니까?

2. FLAGS에서 OF는 이해를 하겠는데 ... CF는 무엇을 하는건가요?

그리고 CF와 OF 가 같이 발생하는건 왜 그런건가요?

3.

.data

temp LABEL DWORD

형에 이렇게 선언되어 있는데 LABEL 이 무엇을 하는 건가요?

4.

.data

bVal2 BYTE ?

ALIGN 4

wVal2 WORD ?

여기서 ALIGN 4는 무엇을 하는 건가요?

5. stack의 POP과 PUSH 는 1바이트 짜리는 안 되나요?

dotri의 이미지

연결리스트 검토 부탁드립니다.

이상하게 자꾸 노드가 엉키는것 같습니다. 연결리스트 구성할때는 값을 찍어봐도 아무 문제가 없어보이는데, 막상 참조하려고 하면 엉뚱한 주소를 가르키고 죽어버립니다.

우선 자료구조입니다.
[code:1]struct _VersionNode {
char *filename;
unsigned char major;
unsigned char minor;
unsigned char patchlevel;

struct _VersionNode *next, *prev;
};

struct _VersionList {
struct _VersionNode *head, *tail;
int count;
};

struct _VersionList *BeginVersionList( const char *filename );

ktop00의 이미지

애플리케이션 사이에 함수 공유...(DLL은 지원 안됨)

application끼리의 데이터 공유는 여러 가지 방법이 있는 것 같은데... 함수 공유는 어떻게 하나요?

즉 A라는 라이브러리에 a와 b라는 함수가 있는데 이를 각각

X와 Y라는 Application에서 호출하고 싶어요...
X Application에 라이브러리 링크해 놓은 다음에 Y Application에서 호출이 가능한지.. -_-;;;

a 와 b 사이에는 서로 연관 관계가 있어서 하나의 인스턴스로 처리되어야 합니다(전역 데이터 공유)..

아니면 아래 memory map i/o 처럼 전역 데이터를 절대 주소에 넣고

backdrum의 이미지

Memory Map이 뭐고 또 용도는 무엇인가요?

안녕하세요,
어떤 용도의 C Library를 만들어 줘야 하는데, 그걸 사용하려는 사용자가 memory map의 형태를 물어봅니다. -_-;;;
memory map 이 어떤 것이고, 어떻게 이용되는지에 대한
설명이나, 자료를 찾을 수 있는 URL 등을 좀 알려주세요~

감사합니다~

sisbn의 이미지

C 기초질문입니다. 형변환 관련.


int main(void)
{

  unsigned int i = 10;
  int j = -11;
  i = i + j;
  printf("i : %d\n", i);

}

제가 책에서 보기엔, expression에선,

더 큰 data type으로 자동으로 변환을 해준다고 하는데,

저기서, j를 unsigned로 변환을 해주게 될텐데,

어떻게 결과값이 -1이 나올수가 있을까요?

일단, j를 unsigned로 변환이 되면 음수 데이터는

사라지지 않을까요?

부탁드립니다.

페이지

프로그래밍 QnA 구독하기