프로그래밍 QnA + 설치 및 활용 QnA

mydream의 이미지

scanf와 같은 block 함수를 어떻게 만드나요?

scanf 함수는 키 입력이 있을 때까지는 함수의 실행이 멈추던데요. 실행이 멈추면서도 프로세스를 크게 잠식하지 않고 다른 프로그램과 사이좋게 병존합니다. while로 block를 하게 되면 프로세스 전부를 잠식해서 모든 프로세스를 독점하던데요. 어떻게 하면 scanf 처럼 while을 사용하지 않고도(제 생각에는 while 쓰지 않고 block을 구현하는 것으로 보입니다.) 프로그램의 실행을 키보드의 입력이 있을 때까지 정지시킬 수 있나요?

plrmsu의 이미지

boost unordered map insert 와 find

안녕하세요

boost unordered map을 사용중 문의가 있어 이렇게 글을 쓰게 되었습니다.

멀티 쓰레드 환경에서 공유 자원으로 unoredered map 사용하고 있습니다.

delete는 사용하지 않고 find 와 insert만 사용하고 있는데

성능상 이슈로 lock을 걸지 않고 사용하고 있습니다.

lock을 걸지 않을 경우 find도중 insert를 하게 되면 iterator가 꼬여

find에서 error 발생할 수 있다는 생각을 했는데,

거꾸로 insert에서 core를 떨구면 프로세스가 죽는 현상이 생기고 있습니다.

segment fault에 대한 signal 핸들링은 하지 않고 있습니다.

혹시 이런경험 있으신가여?

tango의 이미지

리눅스 디바이스 드라이버관련 질문이 있습니다.

디바이스 드라이버를 공부하는 학생입니다.
공부하는 도중에 궁금한게 생겼는데 제가 지금까지 책을 봤던 부분중에서는 해결할 수 없을꺼 같아서 이렇게 도움을 청합니다.

일반적으로

fd = open(DEVICE_FILENAME, O_READ);

이런식으로 어떤 디바이스 파일을 여는 open함수가 있다고 하고
file_operations 구조체에 open 필드에 해당하는 함수가

int xxx_open(struct inode *inode, struct file *filp)
{
....
}

라고 했을때 책에 있는 예제도 그렇고 xxx_open 함수가 return 0를 하는데 어떻게 파일 디스크립터에는 open했던 파일에 대한 값이 들어가는지...........
머리속으로 연결이 안되요ㅠㅠㅠ 아직 공부를 시작한지 얼마 안되서 그런거 같은데 이부분에 대해서 이해하려면 어떤 부분을 찾아보는게 이해하는데 도움될지

답변 부탁드립니다.

Tango 올림

rocky의 이미지

sendmail POP3 GMAIL 연동 문제입니다.

안녕하세요. 새내기입니다.

현재 내부망을 구축하고 있습니다. 현재 이메일 서버를 구축하기 위해 sendmail을 설치하였고, GMAIL과 연동하기 위해 POP3 설정을 하였습니다.
그리고, GMAIL에서도 POP3로 메일 가져오기를 통해 현재 GMAIL, 내부망에서 구축된 이메일서버를 같이 사용 하고있습니다.

하지만, 여기서 문제가 있습니다.
그룹메일을 설정하기 위해 alias를 설정 하였습니다. (/etc/aliases)
alias로 이메일을 보내면 리눅스 내부에서는 메일이 잘 받아진것으로 보이는데
GMAIL에서 가져오기가 되지 않습니다. 아마 수신자 주소가 달라서 그런것 같은데 방법이 없을까요?

감사합니다.

이해를 돕기위한 시나리오는 다음과 같습니다.

minyoung347의 이미지

c++, csv파일 정렬 후 저장 문제

안녕하세요,
C++로 대용량 csv 파일을 다루고 있는데 작업 도중에 문제가 생겼습니다.
설명 드리기 위해서 문제를 단순하게 만들었습니다.

먼저 test.csv 파일을 읽어서 숫자를 기준으로 정렬하고 그 결과를 out.csv파일에 저장했습니다.
그 후에 out.csv 파일을 불러와서 getline,while문으로 한줄한줄 화면에 출력했습니다.

out.csv파일을 읽어와서 화면에 출력할 수 있다고 생각했는데
out.csv파일에는 정렬된 결과가 저장되었지만
화면에는 아무 정보도 출력되지 않습니다.

만약, test.csv 파일이 (9x2)이 아니라 (Nx2) 정도가 되면, 전체가 아닌 일부분만 화면에 출력 됩니다.
(제 pc를 기준으로 N=2500 이고, N=1000 일 때는 아무것도 출력 되지 않습니다.)

이런 문제가 생기는 이유에 대해서 알려주시면 감사하겠습니다.

jongmiss의 이미지

[C++] 윈도우 부팅 후 서비스 시작 StartServiceCtrlDispatcher 1063 error 문의드립니다.

안녕하세요.
서비스 시작시 Fail 이슈가 있어 문의드립니다.

OS 환경은 windows xp sp3 이고, 해당 서비스는 "자동" 으로 등록하였습니다.
문제는, 윈도우 부팅 후에만 서비스 자동 시작 시 StartServiceCtrlDispatcher 함수에서 1063 Error 로 실패합니다.

애매한 부분은, 성공할때도 있다는 것입니다.

혹시, 살펴봐야 하는 부분있다면, 조언 부탁드랍니다.
(부팅시, CPU 100% 가 되는 타이밍이 있는데 해당부분과도 관련있을까요?)

=========================================================

해당 코드 첨부합니다.

jhs0315의 이미지

C언어 초보 질문

안녕하세요
c언어 공부 시작한 지 얼마 안된 학생입니다.
4천만명을 버블소트로 돌려서 걸리는 시간을 측정해야 하는데요,
오류를 어떻게 해결해야 할 지 모르겠습니다 ㅠㅠ
4000만을 어떻게 입력해야 하나요... 도와주세요

aabram의 이미지

MFC(C++) vector 와 Vector를 memcpy하려합니다.

아래와 같이 작성했는데 에러가 납니다. 이런 저런 방법으로 검색중인데 찾기가 어렵네됴..... 방법문의 드립니다.
vtime은 CSting입니다.

memcpy(&vAtime[0], &vtime[0], sizeof(vtime));

이렇게 해도 안됩니다.
memcpy(&vAtime[0], &vtime[0], sizeof(vtime[0]*vtime.size() );

yellowstone의 이미지

요즘도 리눅스에서 프로그램 설치할 때 rpm이나 dpkg 도구로 설치 하나요?

xx뱅크에서 리눅스 프로그램 설치 및 제거를 rpm으로만 설치 및 제거를 교육 받았던적이 있습니다.
Mariadb 나 nginX 설치 자료를 보면 모두 Yum이나 apt-get만 설치 하는 법이 나오는데요.
실제 현업에서는 rpm으로 프로그램 설치를 하는 곳이 많은가요?

페이지

프로그래밍 QnA + 설치 및 활용 QnA 구독하기