您的位置:首页 > 编程语言 > C#

一个C#的加锁解锁示例

2007-11-19 09:59 537 查看
大家可以仿照这个方法做:

using System;

using System.Collections.Generic;

using System.Text;

namespace Generic_Reusable

{

interface ILockable

{

void Lock();

void Unlock();

}

class SharedMemoryLock : ILockable

{

#region ILockable Members

public void Lock()

{

Console.WriteLine( "SharedLock performs lock method. ");

}

public void Unlock()

{

Console.WriteLine( "SharedLock performs unlock method. ");

}

#endregion

}

class FileLock : ILockable

{

#region ILockable Members

public void Lock()

{

Console.WriteLine( "FileLock performs lock method. ");

}

public void Unlock()

{

Console.WriteLine( "FileLock performs unlock method. ");

}

#endregion

}

class ReusableLock <LOCK > : ILockable where LOCK : ILockable, new()

{

private LOCK lock__ = new LOCK();

#region ILockable Members

public void Lock()

{

lock__.Lock();

}

public void Unlock()

{

lock__.Unlock();

}

#endregion

}

class Program

{

static void Main(string[] args)

{

try

{

ReusableLock <SharedMemoryLock > theLock = new ReusableLock <SharedMemoryLock >();

theLock.Lock();

// TODO: Add your code here

theLock.Unlock();

}

catch (Exception ex)

{

Console.WriteLine(ex.Message);

}

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: