c++ 9

프로그램 중복 실행 확인 코드

개발 방향 pid와 symbolic link를 사용하여 프로그램의 중복 확인을 확인 한다. 개발 절차 1. 현재 process의 process 이름과 pid와 현재 실행 절대 경로를 구함 2. ps -ef 를 통하여 prceess 이름과 동이란 process의 pid를 구함 3. 2번에서 구한 pid를 /proc/ 및에서 찾아서 실행 파일의 경로를 찾아냄 3. 찾은 경로와 1번에서 경롸 3번에 찾은 경로를 비교하여 중복 실행을 확인 코드 #include #include #include #include bool CheckDuplicatiedProcess(std::string process_name) { FILE *fp = nullptr; char run_pid[64] = {0, }; char cur_pat..

[semaphore] c++ semaphore example code

개요 - multi process간에 사용할 semaphore 를 c++로 구현함. - named semaphore를 사용 - semaphore name은 process명으로 자동 사용 Source Code /* Copyright (C) * 2021 - doitnowman * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later versio..

[C++ 개발자되기] 14. millisecond시간 구하기

>>[C++ 관련 모든 글 보기] 1. 목표 millisecond단위 까지 시간 구하기, 사용하는 함수는 C함수 입니다. 2. 필요 헤더 1) #include - localtime_r() 사용을 위해 필요 - ftime() 에서 필요 - strftime() 에서 필요 2) #include - struct timeb 에서 필요로함 3. 필요 함수 1) void ftime(struct *timeb); - millisecond 까지 시간을 구하는 함수 2) struct tm *localtime_r(const time_t *timep, struct tm *result); - 지역 시간을 구하는 함수 4. 구조체 정보 1) struct tm #include // C++ 에서는 struct tm { int tm_s..

ProgrammingLang/c++ 2020.02.02

[C++ 개발자되기] 2. C++ Class의 필요성과 사용법

>>[C++ 관련 모든 글 보기] 1. C++에서의 Class의 목적 객체 지향 프로그래밍을 지원하기 위해 추가되었습니다. 2. 객체 지향 프로그래밍 이란 무엇인가? 프로그램을 기능 단위로 조각 내서 프로그래밍하는 것을 객체 지향 프로그래밍이라고 이해하면 됩니다. 3. 객체 지향 프로그래밍은 왜 필요한가? 먼저 객체 지향 프로그래밍의 필요성을 느끼기 위해서는 절차 지향형 프로그래밍의 단점을 이해해야 합니다. 절차 지향형 프로그래밍에서의 단점은 데이터와 데이터를 처리하는 함수의 연관성이 적은 것입니다. 이것이 왜 단점 이냐면 특정 Data와 연관 있는 함수들을 절차적으로 수행하고 있는데 이때 연관이 없는 함수를 섞을 놓을 경우 코드의 분석을 어렵게 하기 때문입니다. 예를 들어 TCP Server에서 Lis..

ProgrammingLang/c++ 2019.07.18

[C++ 개발자되기] 1. C에는 없고 C++만 있는 것

본 Serise는 C개발자가 C++개발자로 되는 과정에서 겪은 시행 착오를 정리하는 것 입니다. 그래서 목차가 없습니다. 생존을 위한 정리 입니다. 1. 현재 언어 별 스펙 점검 - C : 7년, C로 왠만한거 다 할 수 있음. - C++ : 10년전에 학교에서 배운것이 전부 - java : 10년전에 학교에서 배운것이 전부 - javascript : Web 개발자로 전향 할려고 좀 공부함 결론. 객체 지향의 객짜도 모르는 상태. 적어 놓고 보니 망했습니다... 그런데 현재 회사에서 C++로 개발 하고 있습니다. 2. C에는 없고 C++만 있는 것 1. 문법 1) class >> [C++ 개발자되기] 2. C++ Class의 필요성과 사용법 2) new 와 delete 3) auto 키워드 4) name..

ProgrammingLang/c++ 2019.07.17