라운드 로빈(Round Robin) 스케줄링 알고리즘 라운드 로빈(RR)은 운영 체제에서 가장 간단하고 널리 사용되는 스케줄링 알고리즘 중 하나입니다. 이 알고리즘은 선점형(preemptive) 방식으로, 타임 슬라이스(time quantum)라고 불리는 고정된 시간 단위에 따라 프로세스가 CPU 시간을 공정하게 나누어 사용하도록 합니다. 작동 방식 모든 프로세스가 원형 큐(circular queue)에 추가됩니다. 스케줄러는 각 프로세스에 고정된 타임 슬라이스를 순서대로 할당합니다. 프로세스가 주어진 시간 내에 완료되지 않으면, 실행이 중단되고 큐의 뒤로 이동합니다. 모든 프로세스가 완료될 때까지 이 과정을 반복합니다. 주..

Get Public IP in C++This code uses libcurl to retrieve the public IP address by making an HTTP request to http://api.ipify.org.#include #include #include size_t WriteCallback(void* contents, size_t size, size_t nmemb, std::string* userp) { userp->append((char*)contents, size * nmemb); return size * nmemb;}std::string GetPublicIP() { CURL* curl; CURLcode res; std::string readBuffer..

GetMyIPs C++ CodeThis code retrieves the IP addresses of the system's network interfaces on both Windows and Linux platforms using C++14.#include #include #include // Platform-specific includes#ifdef _WIN32#include #include #pragma comment(lib, "ws2_32.lib")#else#include #include #include #include #include #endifstd::vector GetMyIPs() { std::vector ipAddresses;#ifdef _WIN32 // Initialize W..

INI 파일을 읽고 데이터에 접근할 수 있는 간단한 클래스를 구현하려면, 표준 라이브러리만 사용하여 파일을 파싱하는 로직을 작성할 수 있습니다. 다음은 기본적인 INI 파일 형식을 읽고 데이터에 접근할 수 있는 C++ 클래스의 예제입니다.주요 특징파일 읽기:파일을 줄 단위로 읽으며 섹션, 키, 값을 파싱합니다.공백 및 주석 처리:공백을 제거하고 ; 또는 #로 시작하는 주석을 무시합니다.데이터 저장:섹션(std::string)과 키(std::string)를 기반으로 값을 저장합니다.오류 처리:없는 섹션이나 키에 접근하려고 할 때 예외를 던집니다.간단한 API:섹션 또는 키 값을 손쉽게 가져올 수 있습니다.#include #include #include #include #include class IniPar..
MFC에서 Excel 파일 불러오기1. 준비 단계Visual Studio에서 Excel COM 라이브러리를 참조로 추가.프로젝트 속성에서 Excel OLB 파일 경로를 지정.#include "afxdisp.h"를 프로젝트에 포함.2. 주요 구현 단계COM 라이브러리 초기화: AfxOleInit()와 CoInitialize() 사용.Excel Application 객체 생성: CoCreateInstance 호출.Excel 파일 열기: Workbooks.Open 메서드를 호출하여 파일 열기.셀 데이터 읽기: 특정 워크시트와 셀 선택 후 값 가져오기.COM 해제: CoUninitialize() 호출로 리소스 해제.3. 예제 코드#include "afxdisp.h"void ReadExcelFile() { ..
중첩 블록({})를 지양하는 코딩 스타일코드에서 중첩된 블록({})이 많아지면 가독성이 떨어지고 유지보수가 어려워집니다. 이를 방지하기 위해 Guard Clause Pattern을 사용하여 중첩을 줄이는 방식을 추천합니다.특징 및 장점가독성 향상: 중첩을 줄여 코드가 직관적이고 깔끔하게 보입니다.유지보수 용이: 조건을 만족하지 않을 경우 조기에 종료하여 추가적인 처리가 필요하지 않습니다.로직 흐름 단순화: 여러 if 문이 중첩되지 않아 조건 확인이 단순해집니다.나쁜 예: 중첩된 코드int myFunc(){ if (true == foo1()) { if (true == foo2()) { if (true == foo3()) { ..
- Total
- Today
- Yesterday
- 패턴
- 서귀포블루버블
- Thread
- 블루버블다이빙팀
- 암호화
- 서귀포
- 성산블루버블
- OpenSource
- C# 고급 기술
- 블루버블다이브팀
- 울릉도
- 리눅스
- 스쿠버다이빙
- DLL
- 현포다이브
- C++
- C
- 윈도우
- 제주도
- ip
- C#
- ReFS
- 블루버블
- CMake
- 다이빙
- Linux
- Build
- 디자인패턴
- Windows
- PowerShell
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |