본문 바로가기
반응형

c#128

읽기 / 쓰기 프로퍼티(Property) 선언 및 사용 방법 읽기 / 쓰기 프로퍼티 프로퍼티(property)는 개체 데이터에 대한 액세스가 보호, 제어, 확인되지 않을 위험 없이 공용 데이터 멤버의 편리함을 제공합니다. 프로퍼티는 접근자(accessors)를 선언합니다. 기본 데이터 멤버에서 값을 할당하고 검색하는 특수 메서드입니다. set 접근자를 통해 데이터 멤버를 할당할 수 있으며, get 접근자는 데이터 멤버 값을 검색합니다. class Student { private string _name = "N/A"; private int _age = 0; public string Name { get { return _name; } set { _name = value; } } public int Age { get { return _age; } set { _age =.. 2023. 5. 31.
C# nameof Expression nameof() nameof 식은 변수, 형식 또는 멤버의 이름을 문자열 상수로 생성한다. nameof 식은 컴파일 타임에 계산되며 런타임에는 영향을 주지 않는다. 예제 코드 nameof 식을 사용하여 인수 검사 코드를 더 쉽게 유지 관리할 수 있다. nameof() vs ToString()의 차이점 ToString()은 런타임에서 평가된다. 그리고 포멧 변경이 가능하다. nameof()은 컴파일 타임에서 평가된다. 그래서 런타임에서 영향을 받지 않는다. 2023. 5. 26.
C# StackExchange.Redis로 Redis 사용하기 Redis 테스트에 사용할 C# 프로젝트를 생성해준다. Nuget에서 redis로 검색하고 StackExchange.Redis를 설치한다. 사전 준비 레디스 데이터베이스 이용하기 간단하게 redis 데이터베이스에 접근할 수 있다. IDatabase db = redis.GetDatabase(); GetDatabase() 메서드에서 반환된 오브젝트는 싸게 쓰고 버리는 오브젝트라서 별도로 저장하지 않아도 된다. 개별 서버들에 접근하기 유지보수 목적으로 특정 서버에 접속해야만 하는 상황이 발생할 수 있다. IServer server = redis.GetServer("localhost", 6379); GetServer() 메서드는 EndPoint 또는 IPAddress, Port등의 식별자를 받아서 오브젝트를 반.. 2023. 5. 26.
C# redis에서 Key들을 pattern으로 조회하기 C# 프로젝트에서 redis를 사용하기 위해서 StackExchange.Redis 를 사용해서 구현하였다. 그리고 redis에서 pattern을 이용해서 key값들을 가져오는 함수 Keys()에 대해서 알아보자 함수 원형 // 요약: // Returns all keys matching pattern; the KEYS or SCAN commands will be used based // on the server capabilities; note: to resume an iteration via cursor, cast the // original enumerable or enumerator to IScanningCursor. // // 매개 변수: // database: // The database ID. .. 2023. 5. 25.
C# 명명된 인자(Named Arguments)와 선택적 인자(Optical Arguments) 명명된 인자를 사용하면 인자를 매개 변수 목록 내의 해당 위치가 아닌 해당 이름과 일치시켜 인자를 지정하여 전달할 수 있다. 선택적 인자를 사용하면 일부 매개 변수에 대한 인자를 생략할 수 있다. 두 기법 모두 메서드, 인덱서, 생성자 및 대리자에 사용할 수 있다. 명명된 인자(Named Arguments) 명명된 인자를 사용하면 호출된 메서드의 매개 변수 목록에 있는 매개 변수 순서와 인자 순서를 일치시키지 않아도 된다. PrintOrderDetails("Gift Shop", 31, "Red Mug"); 매개 변수의 순서를 기억하지 못하지만 해당 이름을 알고 있는 경우 임의의 순서로 인자를 보낼 수 있다. PrintOrderDetails(orderNum: 31, productName: "Red Mug".. 2023. 5. 25.
C# 스레딩 스레드(thread)는 명령어를 실행하기 위한 스케줄링 단위이며 프로세스 내부에서 생성할 수 있다. 이는 운영체제에서 멀티 스레딩을 지원한다면 하나의 프로세스가 여러 개의 스레드 자원을 가질 수 있음을 의미한다. 윈도우는 프로세스를 생성할 때 기본적으로 한 개의 스레드를 함께 생성하며, 이를 주 스레드(main thread, primary thread)라고 한다. 스레드는 CPU의 명령어 실행과 관련된 정보를 보관하고 있는데, 이를 스레드 문맥(thread context)이라고 한다. 운영체제의 스케줄러는 실행돼야 할 적절한 스레드를 골라서 CPU로 하여금 실행되게 만드는데, 이때 두 가지 동작을 수행한다. CPU는 현재 실행 중인 스레드를 다음에 다시 이어서 실행할 수 있게 CPU의 환경 정보를 스레드.. 2023. 5. 24.