본문 바로가기
반응형

c#125

C# 비동기 프로그래밍 TAP이란 무엇인가? TAP(Task-based Asynchronous Pattern)이란?TAP(Task-based Asynchronous Pattern)은 .NET Framework 4.5에서 비동기 프로그래밍을 단순화하기 위해 도입된 패턴이다. TAP은 Task 및 Task 클래스를 기반으로 비동기 작업을 처리하며, async / await 키워드와 함께 사용된다.  C# 비동기 프로그래밍 APM이란 무엇인가?APM(Asynchronous Programming Model)이란?APM(Asynchronous Programming Model)은 C#에서 비동기 작업을 구현하는 모델로, .NET Framework에서 도입되었다. 비동기 패턴으로 동작하며, 주로 Begin 혹은 End 이름으로 시작하jettstream.tist.. 2024. 11. 22.
C# 비동기 프로그래밍 APM이란 무엇인가? APM(Asynchronous Programming Model)이란?APM(Asynchronous Programming Model)은 C#에서 비동기 작업을 구현하는 모델로, .NET Framework에서 도입되었다. 비동기 패턴으로 동작하며, 주로 Begin 혹은 End 이름으로 시작하는 메서드의 쌍을 사용하여 작업을 비동기적으로 처리한다. 해당 모델은 .NET Framework 초기에 도입된 모델로 지금은 TAP(Task-Based Asynchronous Pattern)이 도입된 이후로는 사용되지 않는 추세이다. 간략하게만 알아보고 C# 비동기 작업에서 주로 사용하게 될 TAP에 대해서도 알아보자.APM의 주요 특징비동기 작업 처리 : 작업을 시작할 때 Begin 메서드를 호출하고, 작업이 완료되면 .. 2024. 11. 21.
C# 프로그램 진입점 Main함수가 static인 이유 C# 예제 프로젝트를 생성하면 매번 맞이하는 오류해당 질문에 대해서 고민해 본 적이 있는가? 물론 고민하지 않아도 된다고 생각한다. 이런 질문을 하지 않고도 무수히 많은 코드를 작성하고 프로그램을 만들 수 있기 때문이다. 하지만 매번 Main() 함수가 static이기 때문에 Main 함수에서 함수를 호출하려면 해당 함수도 static 함수여야 한다는 컴파일 오류를 매번 마주한다. 그래서 Main() 함수에서 static 키워드를 제거하면 또 다른 오류가 발생한다.using System;class Program{ public int Factorial(int num) { if (num == 0) { return 0; } if .. 2024. 11. 19.
C# 비동기 프로그래밍 시작하기 C# 비동기 프로그래밍C#에서는 async 키워드와 await 키워드를 사용하여 비동기 프로그래밍을 구현await 작업이 이루어지는 경우 await 이후의 작업은 스레드 풀의 유휴 스레드를 할당받아 수행하게 된다.async 키워드해당 메서드 내에서 await 키워드를 사용할 수 있게 만들어 준다.즉, await를 가지고 있을 수 있음을 알려주는 역할반드시 void / Task / Task 중 하나를 반환해야 한다.Task : 백그라운드 속성의 쓰레드, 스레드 풀 사용void 사용시 비동기 메서드를 호출하는 쪽에서 비동기를 제어할 수 없다.await 키워드비동기 작업의 흐름을 제어하는 키워드단항 연산자로 쓰이며 awaitable 형식(Task 또는 Task를 반환하는 함수 또는 메서드)의 인수를 가짐피연산.. 2024. 10. 8.
C# HttpClient.PostAsync 사용하기 HttpClient란 무엇인가?HttpClient은 HTTP 요청을 처리하기 위해서 설계된 .NET 라이브러리 내에 존재하는 클래스이다.HttpClient의 장점비동기 실행(Asynchronous Operations) : 응답을 기다리는 동안 다른 처리가 가능하다.재사용성(Reusable) : 하나의 인스턴스로 여러 요청에 사용이 가능하다.유연성(Flexibility) : HTTP 메소드와 커스텀 가능한 헤더를 지원한다.HttpClient.PosyAsync는 특정한 URL에 대해서 POST 방식으로 비동기로 데이터 송신을 가능하게 한다.기본 예제HttpClient client = new HttpClient();HttpContent content = new StringContent(jsonData, Enc.. 2024. 10. 7.
C# HTTP 프로토콜과 Web 사용 WebClient 사용하여 HTTP 사용하기C#에서 HTTP를 사용하기 위해서는 여러 방법이 있다. 간단하게는 System.Net.WebClient 클래스를 사용할 수 있으며, 좀 더 세밀한 제어를 위해서는 System.Net.HttpWebRequest 클래스를 사용할 수 있다. 아래는 WebClient 클래스를 사용하여 웹사이트의 HTML을 가져오는 예제이다. using System.Net;string url = "http://www.google.com";WebClient webClient = new WebClient();string html = webClient.DownloadString(url);HttpWebRequest를 사용하여 HTTP 사용하기C#에서 좀 더 세밀하게 HTTP를 제어할 필요가 .. 2024. 10. 2.