
주요 기능 설명환형 큐:m_vQueue 벡터를 사용하여 환형 버퍼를 관리합니다.m_nHead와 m_nTail을 사용하여 큐의 시작과 끝을 관리합니다.멀티스레드 동작:std::mutex와 std::condition_variable을 사용하여 스레드 안전성을 보장합니다.Push와 Pop은 동기화되어 있으며, 상태에 따라 조건 변수를 사용하여 대기 상태를 처리합니다.큐 크기 확장:Push 메서드는 큐가 꽉 찬 경우 Resize를 호출하여 크기를 두 배로 확장합니다.큐 크기 축소:Pop 메서드와 MonitorQueue 메서드는 큐 크기가 일정 비율 이하로 줄어들면 크기를 절반으로 축소합니다.크기 축소는 최소 용량(m_nMinCapacity) 이하로는 진행되지 않습니다.모니터링 쓰레드:MonitorQueue 메서..

#pragma pack 지시자는 구조체, 클래스, 또는 유니언의 멤버들이 메모리에 어떻게 배치되는지를 제어하는 데 사용됩니다. 기본적으로 컴파일러는 멤버들을 특정 바이트 경계에 맞추기 위해 패딩을 추가하여 최적의 성능을 보장하지만, 특정 상황에서는 이 패딩을 제거하고 메모리 사용을 최소화해야 할 필요가 있습니다. 이를 위해 #pragma pack을 사용하여 멤버들의 정렬 단위를 변경할 수 있습니다.#pragma pack 사용법#pragma pack(push, 1)과 #pragma pack(pop)은 구조체, 클래스, 유니언의 멤버 정렬을 제어하는 데 사용됩니다. 이 설정은 데이터 패딩을 줄여 메모리 사용을 최적화하거나, 파일 포맷 및 네트워크 프로토콜과 같은 특정 데이터 포맷과의 호환성을 위해 자주 사용..

사설 인증서 발급 방법 1. OpenSSL을 이용한 사설 인증서 발급 1.1. OpenSSL 설치 Windows에서는 OpenSSL for Windows를 설치합니다. Linux나 macOS에서는 패키지 관리자를 이용해 설치할 수 있습니다. 1.2. 사설 CA 키와 인증서 생성 사설 CA의 비밀키와 인증서를 생성합니다: openssl genpkey -algorithm RSA -out ca-key.pem -aes256 openssl req -x509 -new -nodes -key ca-key.pem -sha256 -days 3650 -out ca-cert.pem ..

사설 인증서를 이용한 코드 서명 및 검증 1. 사설 인증서를 이용한 코드 서명 및 검증 개요: 사설 인증서를 사용해 폐쇄망에서 코드 서명(Code Signing)을 구현하는 방식입니다. 이때 인증서와 코드 서명을 통해 파일의 무결성과 신뢰성을 검증할 수 있습니다. 사설 인증서는 사설 인증 기관(CA)에서 발급되며, 이를 각 시스템에 배포하여 서명된 파일을 검증합니다. 주요 단계: 사설 인증서 발급 및 배포: 사설 인증 기관(CA)을 구축하여 인증서를 발급하고, 이를 시스템에 배포해 신뢰할 수 있는 루트 인증서로 설정합니다. 코드 서명 및 검증: 발급된 인증서를 사용해 파일이나 DLL에 디지털 서명을 합니다...

#include #include #ifdef _WIN32 #include #include #pragma comment(lib, "Ws2_32.lib")#else #include #include #endifbool convertIPv4ToIPv6(const std::string& ipv4AddrStr, std::string& ipv6AddrStr) { struct in_addr ipv4Addr; struct in6_addr ipv6Addr; // Convert the string IPv4 address to in_addr if (inet_pton(AF_INET, ipv4AddrStr.c_str(), &ipv4Addr) != 1) { std:..

#pragma once#include class cStringUtil{public: static std::wstring MBSToWCS( const std::string& _ssMbsStr, UINT _nCodePage = CP_UTF8 ); // 유니코드 문자열을 멀티바이트 문자열로 변환 static std::string WCSToMBS( const std::wstring& _ssWcs, UINT _nCodePage = CP_UTF8 ); // Format 함수는 가변 인수를 받아 들여 std::wstring을 포맷합니다. template static std::wstring Format( const std::wstring& format, Args&&... args..
- Total
- Today
- Yesterday
- Thread
- C# 고급 기술
- 디자인패턴
- 패턴
- Windows
- 윈도우
- 제주도
- PowerShell
- DLL
- Build
- 블루버블다이빙팀
- 울릉도
- 암호화
- 블루버블다이브팀
- ReFS
- C
- 서귀포블루버블
- Linux
- OpenSource
- C#.NET
- 현포다이브
- 서귀포
- C++
- 성산블루버블
- 스쿠버다이빙
- 리눅스
- ip
- 블루버블
- CMake
- 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 |
29 | 30 |