shared memory를 이용하는 프로그래밍 중입니다.
횃대비
질문 제목 : 질문 내용 :
shared memory를 이용하여 프로그래밍을 하고있는데요. 제가 아직 초보라서 잘모르겠네요.
고수님들 보시고 좀 고쳐주세요ㅠㅠ부탁드립니다.
하려는 작업은 일단 데이터를 10만건 정도 집어넣구요.
다음으로 10만건 데이터를 b값만 업데이트해서 그 성능을 시간으로 계산을 해보려고합니다.
a값은 키값이라 증가할 수록 바뀌어야 하구요. 많은 조언바랍니다.
#include windows.h
#include stdio.h
#include time.h
#pragma pack(1)
typedef struct tag_smtest
{
char a;
double b;
double c;
double d;
double e;
double f;
double g;
double h;
double i;
} smtest;
int main(int argc, char *argv[])
{
handlehmapf;
smtest*one_record;
char*psm;
char*head;
clock_t start_time, end_time;
hmapf=createfilemapping(
invalid_handle_value,
null,
page_readwrite,
0,
sizeof(smtest),
jjbsmtest);
if(hmapf==null)
{
printf(createfilemapping() fail);
return 1;
}
psm =mapviewoffile(hmapf,file_map_all_access,0,0,sizeof(smtest)*100000);
/* for data initialize ( 100000 ) */
head = psm;
for(int i=0;i100000;i++){
one_record = (smtest)head;
one_record-a=aaaabaaaabaaaabaaaabaaaab%07d;
one_record-b=1234.1234;
one_record-c=1234.1234;
one_record-d=1234.1234;
one_record-e=1234.1234;
one_record-f=1234.1234;
one_record-g=1234.1234;
one_record-h=1234.1234;
one_record-i=1234.1234;
head = head + sizeof(smtest);
}
start_time = clock(); // start_time
/* for data update */
head = psm;
for( int i = 0; i 100000; i++)
{
one_record = (smtest)head;
one_record-b=1234.4321;
head = head + sizeof(smtest);
}
end_time = clock(); // end_time
printf(time : %f\n, ((double)(end_time-start_time)) / clocks_per_sec);
/* for data check */
head = psm;
for( int i = 0; i 1000; i++)
{
one_record = (smtest)head;
printf(one_record-a,one_record-b,one_record-c,one_record-d,one_record-e,one_record-f,one_record-g,one_record-h,one_record-i);
head = head + sizeof(smtest);
}
unmapviewoffile(psm);
closehandle(hmapf);
return 0;
}
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2698120 | -연산자 가 먼지 좀 알려주세요 (1) | 낮선검객 | 2025-06-14 |
2698091 | 길찾기문제 질문이요! | 노을빛 | 2025-06-13 |
2698060 | while 문에 대한 질문입니다. (9) | 물고기자리 | 2025-06-13 |
2698012 | 2~9가아닌수 | 아놀드 | 2025-06-13 |
2697980 | for에 gets함수를 넣으니까 왜 반복이 안되죠 ㅜ (2) | 펴라 | 2025-06-12 |
2697952 | 2차배열과 함수문의^^; | VanilLa | 2025-06-12 |
2697924 | 다차원 배열 질문있습니다 | 두동 | 2025-06-12 |
2697893 | 정올 :: 기초다지기 a9007 배열7 (문제가 이상함 -_-) | 흰두루 | 2025-06-12 |
2697862 | Unable......... 지정된 파일을 찾을 수 없습니다!! (1) | Creator | 2025-06-11 |
2697761 | 그러니까여제말은... (2) | 새론 | 2025-06-10 |
2697737 | 정올 문제좀 풀어보신분~ | 레오 | 2025-06-10 |
2697709 | rand함수 질문좀요! (6) | 가막새 | 2025-06-10 |
2697683 | C언어 변수뒤 표시가 이해안되는게 있습니다. | 소미 | 2025-06-10 |
2697660 | 껍데기딜 만들고 난후 어느핫키 누르면 코드검색이라도 뜨고 그다음 무반응 해결좀 (2) | 움찬 | 2025-06-09 |
2697634 | c언어로 감성사전 만들기! (1) | 도란도란 | 2025-06-09 |
2697605 | 이 함수좀... | agine | 2025-06-09 |
2697574 | 배열 기본적인질문 (3) | 민트향 | 2025-06-09 |
2697549 | 배열 초기화 (4) | 나리 | 2025-06-08 |
2697465 | 수다님...^^ (2) | 가론 | 2025-06-08 |
2697432 | 서버 만드는 함수에서 궁금한게있어요~ | 파랑 | 2025-06-07 |