Programming/C# - Window 91

C#/ 스트림(stream)

버퍼 스트림(Buffered Stream), 파일 스트림(File Stream), 그리고 메모리 스트림(Memory Stream)은 C#에서 데이터를 처리하는 다양한 스트림 유형 중 일부입니다. 각각의 기능과 예시를 설명하겠습니다. 1. **버퍼 스트림(Buffered Stream)**: 컴퓨팅에서 버퍼(buffer, 문화어: 완충기억기)는 데이터를 한 곳에서 다른 한 곳으로 전송하는 동안 일시적으로 그 데이터를 보관하는 메모리의 영역이다. 버퍼링(buffering)이란 버퍼를 활용하는 방식 또는 버퍼를 채우는 동작을 말한다. 버퍼 스트림은 입출력 작업을 효율적으로 수행하기 위해 데이터를 버퍼에 저장하고 한 번에 읽거나 쓸 수 있는 스트림입니다. 이로 인해 입출력 작업의 성능이 향상됩니다. `Buffer..

C#/ TCP-IP 통신

# 서버 소켓 코드 using System; using System.Net; using System.Net.Sockets; using System.Text; namespace ConsoleApp1 { class Program { static void Main(string[] args) { // (1) IP 주소와 포트를 지정하고 TCP 서버 소켓 생성 TcpListener serverSocket = new TcpListener(IPAddress.Parse("192.168.19.111"), 1111); try { serverSocket.Start(); // 서버 소켓 시작 Console.WriteLine("서버가 시작되었습니다. 클라이언트 연결을 기다립니다..."); // (2) 클라이언트의 연결을 기다림..

C#/ NModbus4(Modbus) 모드버스

# Nuget 라이브러리 설치 (NModbus4) # Master 코드(데이터 요청 제어) using Modbus.Device; using System; using System.Data; using System.Net.Sockets; using System.Windows.Forms; namespace Modbus_Master { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { comboBox_FunCode.SelectedIndex = 0; txt_ip.Text = "127.0.0.1"; txt_port.Text = "5..

C#/ SQL server 사용

# MSSQL 설치 및 서버 생성 https://server-talk.tistory.com/248 MSSQL 데이터베이스(DB) 생성과 새 로그인 사용자 추가 MSSQL 데이터베이스(DB) 생성과 새 로그인 사용자 추가 알아보기 이번에는 MSSQL에서 데이터베이스(DB) 생성과 계정생성을 알아보도록 하겠습니다 이전 글 : Windows SQL Server 2014 Express 설치 - http://server server-talk.tistory.com # MSSQL 인증모드 변경 https://fliedcat.tistory.com/145 [MS-SQL] 서버 인증 모드 변경 개요 구성환경 SQL Server 2019, Windows Server 2016 Std SQL Server Management S..

C#/ 보충 1(객체, 스레드, 컬렉션스)

# 객체 생성 using System; namespace ConsoleApp1 { public class Univ { private string[] name; private string[] sex; private int[] age; public int[] Age { get { return age; } set { age = value; } } public string[] Sex { get { return sex; } set { sex = value; } } public string[] Name { get { return name; } set { name = value; } } } } *Java랑 비교해 보면, C#은 키워드로 get,set 이 프로퍼티로 사용한다. # 스레드 및 컬렉션스 활용 using S..

C# / 동기(async), 비동기(await), 병렬(parallel) 처리

# 동기, 비동기, 그리고 병렬 처리 다양한 방식으로 작업을 처리하고 성능을 최적화하는 데 도움을 줍니다. 각각의 처리 방식을 비교하여 설명하겠습니다: 1. 동기 처리 (Synchronous): - 동기 처리는 작업이 순차적으로 실행되는 방식입니다. 즉, 한 작업이 완료되기를 기다린 다음 다음 작업을 수행합니다. - 일반적으로 단일 스레드에서 작업이 처리되며, 한 작업이 끝나야 다음 작업을 수행할 수 있습니다. - 동기 처리는 간단하고 예측 가능하지만, 대규모 또는 시간이 오래 걸리는 작업에서는 성능 문제가 발생할 수 있습니다. 2. 비동기 처리 (Asynchronous): - 비동기 처리는 작업이 병렬적으로 실행되는 방식으로, 다른 작업이 진행 중일 때 다른 작업을 시작할 수 있습니다. - 비동기 키워..