Programming/C# - Window

C#/ Mutex와 Base키워드에 관해

esoog Polaris 2023. 11. 9. 23:33
반응형

# Mutex

 "상호배제"를 나타내는 용어로서, 한 번에 한 스레드만이 특정 자원에 접근할 수 있도록 하는 동기화 메커니즘입니다. 즉, 여러 스레드가 공유 자원에 안전하게 접근할 수 있도록 하는 역할을 합니다.

using System;
using System.Threading;

class Program
{
    static Mutex mutex = new Mutex(); // Mutex 선언

    static void Main()
    {
        for (int i = 0; i < 5; i++)
        {
            Thread t = new Thread(DoWork);
            t.Start();
        }

        Console.ReadLine();
    }

    static void DoWork()
    {
        mutex.WaitOne(); // Mutex 획득

        // Critical Section (임계 영역): 여러 스레드가 동시에 접근할 수 없는 부분
        Console.WriteLine($"Thread {Thread.CurrentThread.ManagedThreadId} is in the critical section.");

        mutex.ReleaseMutex(); // Mutex 반환
    }
}



# base 키워드

 

파생 클래스에서 기본 클래스의 멤버에 접근할 때 사용됩니다. 파생 클래스에서 기본 클래스의 생성자를 호출하거나, 기본 클래스의 메서드를 호출하는 데 사용됩니다.

class Animal
{
    public void Eat()
    {
        Console.WriteLine("Animal is eating.");
    }
}

class Dog : Animal
{
    public void Bark()
    {
        Console.WriteLine("Dog is barking.");
    }

    public void AnimalEat()
    {
        base.Eat(); // 기본 클래스의 Eat 메서드 호출
    }
}

class Program
{
    static void Main()
    {
        Dog myDog = new Dog();
        myDog.Bark();       // Dog 클래스의 메서드 호출
        myDog.AnimalEat();  // 기본 클래스의 메서드 호출
    }
}

 

 

https://www.csharpstudy.com/Threads/mutex.aspx

 

Mutex 클래스 - C# 프로그래밍 배우기 (Learn C# Programming)

Mutex 클래스 Mutex 클래스는 Monitor클래스와 같이 특정 코드 블럭(Critiacal Section)을 배타적으로 Locking하는 기능을 가지고 있다. 단, Monitor클래스는 하나의 프로세스 내에서만 사용할 수 있는 반면, Mut

www.csharpstudy.com

 

 

https://slaner.tistory.com/124

 

base 키워드를 알아보자

안녕하세요!정말 오랜만의 글입니다! 이 글에서는 C#의 base 키워드에 대해서 알아보려고 합니다. base 키워드해당 키워드를 사용하는 클래스의 부모 클래스를 가리키는 것일단, 코드를 보시겠습

slaner.tistory.com

 

728x90

'Programming > C# - Window' 카테고리의 다른 글

C#/ 윈도우 서비스 프로그램  (0) 2023.11.16
C#/ 전처리기 #  (0) 2023.11.14
C#/ Can 통신과 Lin 통신에 관해  (0) 2023.11.03
C#/ DLL 파일 관련  (0) 2023.11.03
C#/ '@' 기호 사용  (1) 2023.10.18