C++에서 UTC ↔ KST 변환하는 방법 C++에서 현재 시간을 UTC(세계 협정시) 및 KST(한국 표준시, UTC+9)로 변환하는 방법을 정리합니다. C++98 / C++03 (std::time) UTC 시간 가져오기 #include #include int main() { std::time_t now = std::time(nullptr); std::tm* gmt = std::gmtime(&now); std::cout tm_year + 1900) tm_mon + 1) tm_mday tm_hour tm_min tm_sec KST (한국 표준시) 가져오기 #include #include int main() { std::time_t no..
RAND 정리 1. RAND 설명 RAND는 난수를 생성하는 함수 또는 메커니즘으로, 소프트웨어 및 하드웨어에서 사용됩니다. 목적: 난수는 보안, 시뮬레이션, 게임, 통계적 분석 등 다양한 분야에서 필요합니다. 특징: 난수는 예측할 수 없어야 하며, 진정한 난수(TRNG)와 의사 난수(PRNG)로 나뉩니다. 2. RAND 함수 종류 설명 (C++) std::rand (C 표준 라이브러리) std::random_device (C++11 이후) std::mt19937 (Mersenne Twister, C++11 이후) std::uniform_i..
CFileMon 클래스 설계 및 구현 개요 CFileMon 클래스는 특정 파일의 변경 사항을 감지하며, Windows와 POSIX 환경 모두에서 작동하도록 설계되었습니다. Named Mutex를 활용하여 다중 프로세스 동기화를 보장하며, 파일이 삭제되거나 수정되는 상황에 안정적으로 대응합니다. 주요 기능 Windows 및 POSIX 환경 지원 Named Mutex를 활용하여 다중 프로세스 동기화 파일 변경 시 해시를 비교하여 변경 여부 감지 파일이 삭제되거나 접근 불가한 경우 예외 처리 주기적인 파일 상태 확인 (스레드 기반 구현) 플랫폼별 구현 ..
IOCP, Boost.Asio, epoll 예제 1. IOCP (Windows) 플랫폼: Windows 설명: IOCP는 Windows에서 제공하는 비동기 I/O 처리 메커니즘으로, 고성능 네트워크 서버를 구축할 때 사용됩니다. 예제 코드: #include #include #include #include #include #pragma comment(lib, "Ws2_32.lib")struct ClientContext { OVERLAPPED overlapped; SOCKET socket; char buffer[1024];};void workerThread(HANDLE iocpHandle) { DWORD bytesTransferred; UL..
IOCP, Boost.Asio, epoll 비교 1. IOCP (I/O Completion Port) 플랫폼: Windows 설명: Microsoft에서 제공하는 고성능 비동기 I/O 처리 기술로, 소켓, 파일, 파이프 등을 효율적으로 처리합니다. 주요 특징: 완료 기반 이벤트 모델 (비동기 작업 완료 시만 처리). 스레드 풀을 활용한 효율적인 CPU 사용. 수십만 개의 동시 연결을 처리할 수 있는 고성능. 2. Boost.Asio 플랫폼: 크로스 플랫폼 (Windows, Linux, macOS) 설명: Boost 라이브러리의 일부로, 고성능 비동기 I/O를 제공하며, 플랫폼별 메커니즘(IOCP, epoll 등)을 ..
ACE 라이브러리 설명ACE(The Adaptive Communication Environment)는 네트워크 및 분산 시스템 개발을 지원하기 위한 C++ 기반의 오픈소스 라이브러리입니다. 네트워크 소켓, 멀티스레드, 동기화 제어 등의 기능을 제공합니다.주요 특징이식성: 다양한 플랫폼에서 동작.높은 성능: 멀티스레드 및 이벤트 기반 프로그래밍 지원.모듈화된 디자인: 필요한 기능만 선택적으로 사용 가능.클라이언트-서버 통신 C++ 예제 코드서버 코드// 서버 코드 (server.cpp)#include #include #include #include #include int main() { ACE_INET_Addr port(8080); ACE_SOCK_Acceptor acceptor; if (..
- Total
- Today
- Yesterday
- 블루버블다이빙팀
- 현포다이브
- C# 고급 기술
- Windows
- Thread
- Build
- 서귀포블루버블
- PowerShell
- 외돌개
- 울릉도
- 서귀포
- 블루버블
- 암호화
- 윈도우
- 블루버블다이브팀
- 제주도
- 스쿠버다이빙
- ip
- OpenSource
- CMake
- C#.NET
- DLL
- 리눅스
- C
- Linux
- 패턴
- 스쿠버 다이빙
- 성산블루버블
- C++
- C#
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |