C++ - C#의 region 사용하기

VC 에서는 개요 확장/축소 기능이 있다. 클래스, 함수, if 문 등을 개요 축소로 화면에 시작 줄만 표시할 수 있다. 긴 코드를 핵심만 보고 싶을 때 사용하면 유용하다. 그런데 아래와 같은 변수들의 나열은 개요 축소를 할 수 없다. const int TEXT_1...
더 읽기

ZeroMQ

소개 공식 사이트 http://www.zeromq.org/ Github https://github.com/zeromq 예제 https://github.com/imatix/zguide N-N 통신을 구현하는 socket API풍의 경량 메시지 라이브러리 자동적으로 재접속이나 메시지 큐잉을 해 준다 복수의 메시징 패턴 이라는 것을 조합하여 유연한 메시징 배신을 할 수 있다. 오픈소스 Windows 및 리눅스 계열 지원...
더 읽기

C# - binary 데이터 읽고, 쓰기

읽기 BitConverter BitConverter 클래스의 타입 별 함수를 사용한다 var data = new byte[2048]; var pos = 0; Int16 PacketID = BitConverter.ToInt16(data, pos); pos += 2; UnSafe public static unsafe short Int16(byte[] bytes, int offset) { fixed (byte* ptr = bytes)...
더 읽기

MQTT

출처 ##MQTT란? MQTT(MQ Telemetry Transport)는 publish/subscribe 모델을 기반으로 하는 경량 메시지 프로토콜이다. 네트워크가 불안정한 장소에서 동작하기 위한 기능이나 힘이 약한 장치에서 움직이기 위한 경량화 등이 특징이다. MQ라고 이름이 붙어 있지만, 부하를 분산시키기 위한 이른바 Job Queue는 없다 . 그런 용도로는...
더 읽기

C++ - C4100 경고를 없애주는 UNREFERENCED_PARAMETER 매크로

VC에서 경고 레벨 4로 컴파일 하면 자주 볼 수 있는 경고주 하나가 아래와 같은 경고이다. warning C4100: 'argc' : unreferenced formal parameter warning C4100: 'argc' : 참조되지 않은 형식 매개 변수입니다. </br> 선언은 했는데 사용하지 않았기 때문에 나온 것이다. 이런...
더 읽기

golang - CentOS 7에서 Go 설치하기

Go 다운로드 여기에서 다운로드 $ cd ~ $ wget https://dl.google.com/go/go1.12.6.linux-amd64.tar.gz 설치 다운로드한 파일의 업축을 푼다. $ sudo tar -C /usr/local -xzf ~/go1.12.6.linux-amd64.tar.gz 환경 변수 환경 변수에 Go의 path를 추가한다. export PATH=$PATH:/usr/local/go/bin $ vim ~/.bashrc $ source ~/.bashrc 동작 확인 $...
더 읽기

C# - 소켓 옵션

아래 코드는 C#에서 소켓 옵션을 설정하는 예제 코드이다. 출처: https://docs.microsoft.com/ko-kr/dotnet/api/system.net.sockets.socket.lingerstate static void ConfigureTcpSocket(Socket tcpSocket) { // Don't allow another socket to bind to this port. tcpSocket.ExclusiveAddressUse = true; // The socket will linger for 10 seconds after Socket.Close is called....
더 읽기

ASP.NET Core 서버 시작까지 흐름 추적

출처 프로그램 엔터리 Program#Main Program 클래스의 Main 메소드 안은 아래처럼 되어 있다. 이것을 1행씩 따라가 본다. Program.cs WebHost.CreateDefaultBuilder(args) .UseStartup<Startup>() .Build() .Run(); 1행: .CreateDefaultBuilder(args) WebHostBuilder 인스턴스 만들기 WebHostBuilder 인스턴스를 만든다. 소스 파일: https://github.com/aspnet/AspNetCore/blob/master/src/DefaultBuilder/src/WebHost.cs var builder = new WebHostBuilder(); 환경 변수를 읽도로...
더 읽기

ASP.NET Core 애플리케이션 최소 구현 치트 시트

원본 아래의 설정만 하면 OK. csproj App.csproj <Project Sdk = "Microsoft.NET.Sdk.Web" > <PropertyGroup> <TargetFramework> netcoreapp2.0 </TargetFramework> </PropertyGroup> <ItemGroup> <! - 진짜 최소 구성 -> <PackageReference Include = "Microsoft.AspNetCore.Server.Kestrel" Version = "2.0.3" /> <! - ASP.NET Core MVC (Web API)를 사용할...
더 읽기

C# - Random 유틸리티

.NET 라이브러리의 기본 Random에 기능을 추가한 것이다. 아래 코드는 Unity용인데 조금 고치면 .NET에서도 사용할 수 있다. 출처 using System; using System.Collections.Generic; using System.Linq; using UnityEngine; using Random = UnityEngine.Random; namespace Assets.Scripts.Utils { public static class RandomUtil { /// <summary> ///...
더 읽기