FirstTime

    xiaoxiao2021-08-15  241

    学编程那么久第一写博客,感觉现在才是真正地去对待,去学习如何去编程。一直对编程是又爱又恨,学得不怎么样,工作也找得不怎么样。和自己一起走这行的同学估计已经比我这只蠢鸟飞远很多了吧。很气自己懒散,很气自己想当然,编程不会一蹴而就,一步一个脚印,即使是抄也得打上一遍,记不住就再打,总有一天会记住的,毕竟当年HelloWorld都要琢磨一阵的自己已经不在了,每天都会有不懂的东西出现,要做的就是认识它,学会它,领悟它。

    今天学到小玩意,C#的“线程安全整形”,用来解决多线程同时访问一个变量的问题。

    首先定义一个ConcurrentInteger类

    public class ConcurrentInteger

    {

    private int value;

    Mutex tex=new Mutex();

    public ConcurrentInteger(){};

    public ConcurrentInteger(int value){ this.value=value;}

    //自增并返回值

    public int GetAndAdd()

    {

    lock(this);

    tex.WaitOne();

    value++;

    tex.ReleaseMutex();

    return value;

    }

    //自减并返回值

    public int GetAndReduce()

    {

    lock(this);

    tex.WaitOne();

    value++;

    tex.ReleaseMutex();

    return value;

    }

    //重置value

    public void Reset()

    {

    lock(this);

    value=0;

    tex.ReleaseMutex();

    }

    }

    转载请注明原文地址: https://ju.6miu.com/read-676368.html

    最新回复(0)