StackExchange.Redis 사용 방법 정리. 접속 실패 출처 try { cache = Connection.GetDatabase(); } catch (RedisConnectionException e) { WriteException("접속 실패", e); return; } key가 없는 경우 출처 try { // 존재하지 않는 key를 StringGet 메소드에 넘기면 RedisValue 타입에서 Null을 가리키는 값을...
더 읽기
몇 년전에 웹에 공개된 글을 보고 정리했던 글이다.
더 읽기
더 읽기
더 읽기
더 읽기
자세한 설명은 http://d2.naver.com/helloworld/267396. 타임아웃 작업의 만료 여부에 대한 검사가 필요 없는 등록과 실행 두 작업만을 모두 O(1)의 시간 복잡도로 처리할 수 있는 타이머를 구현할 수 있다. 출처: https://github.com/billlin0904/librapid uint64_t TimingWheel::add(uint32_t timeout, bool onece, TimeoutCallback callback) { //std::lock_guard<platform::Spinlock> guard{ lock_ };...
더 읽기
Windows Vista부터 사용 가능. CreateThreadpoolTimer, SetThreadpoolTimer API 사용. ‘윈도우 시스템 프로그램을 구현하는 기술(한빛미디어)’에 설명이 잘 나와 있음 예제 코드 출처: https://github.com/billlin0904/librapid using TimerPtr = std::shared_ptr<Timer>; class Timer { public: using TimeoutCallback = std::function<void(void)>; static TimerPtr createTimer(); void start(TimeoutCallback callback, uint32_t...
더 읽기
출처 시작하기 C++ Core Guidelines Checker는? 주로 Bjarne Stroustrup과 Herb Sutter에 의한 C++ Core Guidelines는 더 나은 C++ 코드를 작성하는데 필요한 지침이 정비 되어 있다. 이 지침의 많은 항목은 분석 도구를 통해 확인 가능하도록 쓰여져 있다. C++ Core Guidelines Checker는...
더 읽기
BenchmarkDotNet 라이브러리 소개 .NET Core + BenchmarkDotNet 실행 시 프레임워크를 찾지 못하는 문제 BenchmarkDotNet 사용 시 주의 사항 BenchmarkDotNet에서 생성한 BuildPlots.R 파일을 실행하는 방법 BenchmarkDotNet으로 Span 성능 측정 (일어)BenchmarkDotNet을 사용해 보자 (일어)BenchmarkDotNet 개요 (일어).NET Core에서 BenchmarkDotNet을 이용하기 (일어)BenchmarkDotNet을 .NET Framework와...
더 읽기
출처 VS Code의 Remote Container 기능을 사용하여 최대한 빨리 Rust을 시작하려는 사람들에게 아래의 docker-compose.yaml 를 준비했다! docker-compose.yaml version: '3' services: rust: image: rust:1.38 volumes: - .:/opt/rustapp environment: - USER=`${USER}` working_dir: /opt/rustapp stdin_open: true rust:1.38는 현재 최신 버전이다. Docker Hub의 Rust...
더 읽기