登录
首页 » C#源码 » C# 锁定线程释放Mutex对象

C# 锁定线程释放Mutex对象

于 2022-08-10 发布 文件大小:8.97 kB
0 144
下载积分: 2 下载次数: 1

代码说明:

C# 锁定线程释放Mutex对象的例子,与锁定线程相比,多了释放Mutex对象的功能,实现方法和思路大致差不多:   C#锁定线程,可编写以下代码:   Program myProgram = new Program();//实例化类对象   myProgram.LockThread();//调用锁定线程方法   C# 释放Mutex对象,可编写以下代码:   Mutex myMutex = new Mutex(false);//实例化Mutex类对象   myMutex.WaitOne();//阻止当前线程   Console.WriteLine("锁定线程以实现线程同步");   myMutex.ReleaseMutex();//释放Mutex对象   完整可运行源码实例,请下载本源码。

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • C# 使用Socket连接远程主机的例子
    C# UseSocket例子,使用Socket连接远程主机,其核心是使用Socket的构造函数实例化一个Socket对象,用来连接远程主机,再具体就是调用Connect方法连接远程主机,在成功连接主机后,调用自定义方法ConnectSocket,使用指定的服务器名和端口号实例化一个Socket对象,将请求发送到连接的服务器,从绑定的Socket接收数据,将接收到的数据转换为字符串类型,调用自定义方法SocketSendReceive获取指定主机的主页面内容。   远程连接部分的实现如下:   //使用指定的IP地址和端口号实例化IPEndPoint对象   IPEndPoint IPEPoint = new IPEndPoint(address, port);   //使用Socket的构造函数实例化一个Socket对象,以便用来连接远程主机   Socket newSocket = new Socket(IPEPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp);   newSocket.Connect(IPEPoint); //调用Connect方法连接远程主机   在创建远程连接之前,要循环遍历得到的IP地址列表。
    2022-04-29 10:57:31下载
    积分:1
  • Visual C# 定制个性化的winForm窗体
    Visual C# 定制个性化的winForm窗体,自定义窗体的按钮和标题栏,最终运行效果如示例截图所示,看一看窗体的标题 栏完全和默认的风格不一样了,更接近于Windows8的扁平化风格了,呵呵,或许只是我的个人感觉。右侧是一个大按钮,总之这个窗口中的元素都是自定义的,不是默认的,对于以后自定义个性化的窗口分享一些技巧。
    2022-04-10 03:00:12下载
    积分:1
  • Visual C# 在无连接数据表中创建AutoIncrement列
    C# 在无连接数据表中创建AutoIncrement列,在数据表中添加记录一.代码:   //在数据表中添加记录一   DataRow MyRow = MyTable.NewRow();   MyRow["ID"] = 87121;   MyRow["Name"] = "罗斌";   MyRow["Tel"] = "023-40231026";   MyRow["MP"] = "13036371686";   MyRow["Company"] = "无锡宝特软件有限公司";   MyTable.Rows.Add(MyRow);   this.dataGridView1.DataSource = MyTable;
    2022-05-16 06:23:51下载
    积分:1
  • C# 指定主机和端口发消息的实现
    Visual C# 指定主机和端口发消息的实现例子,支持和远程主机发送消息,本例子可学习到很多实用的网络方法的用法,以下代码是本功能的核心实现:   richTextBox1.Text = string.Empty;   //实例化UdpClient对象   UdpClient udpclient = new UdpClient(Convert.ToInt32(textBox2.Text));   //调用UdpClient对象的Connect建立默认远程主机   udpclient.Connect(textBox1.Text, Convert.ToInt32(textBox2.Text));   //定义一个字节数组,用来存放发送到远程主机的信息   Byte[] sendBytes = Encoding.Default.GetBytes(textBox3.Text);   //调用UdpClient对象的Send方法将Udp数据报发送到远程主机   udpclient.Send(sendBytes, sendBytes.Length);   //实例化IPEndPoint对象,用来显示响应主机的标识   IPEndPoint ipendpoint = new IPEndPoint(IPAddress.Any, 0);   //调用UdpClient对象的Receive方法获得从远程主机返回的Udp数据报   Byte[] receiveBytes = udpclient.Receive(ref ipendpoint);   //将获得的Udp数据报转换为字符串形式   string returnData = Encoding.Default.GetString(receiveBytes);   richTextBox1.Text = "接收到的信息:" + returnData.ToString();   //使用IPEndPoint对象的Address和Port属性获得响应主机的IP地址和端口号   richTextBox1.Text += " 这条信息来自主机" + ipendpoint.Address.ToString()    + "上的" + ipendpoint.Port.ToString() + "端口";   //关闭UdpClient连接
    2022-02-10 10:21:19下载
    积分:1
  • C# 保存对数据库记录的插入、删除及修改操作结果
    C# 保存对数据库记录的插入、删除及修改操作结果,设置控件数据源,对操作的结果以MessageBox.Show在消息框中显示提示信息,执行过程中验证Shippers数据表、验证Phone字段、验证CompanyName字段
    2022-04-08 04:57:49下载
    积分:1
  • C#编写winForm版的数据库创建数据表程序
    C#编写winForm版的数据库创建数据表程序,通过查询语句来创建数据表,用户可在窗口内输入需要创建的数据表名称,点击操作按钮,转入程序执行阶段,将使用SQL语句来生成数据表,窗口运行效果如图所示。
    2022-03-11 17:55:01下载
    积分:1
  • C# 把listView数据排列成图标缩略图风格
    C#控制ListView的显示方式,把listView数据排列成图标缩略图风格,这种风格在Windows中十常见,图标的排列就是这种风格的,实现的相关代码:   private void Form1_Load(object sender, EventArgs e)   {    listView1.Items.Add("开源爱好者");//使用Add方法向控件中添加项目    listView1.Items.Add("www.codesc.net");//使用Add方法向控件中添加项目    listView1.Items.Add("C#从基础到项目实战");//使用Add方法向控件中添加项目    listView1.Items[2].Selected = true;//使用Selected方法选中第3项   }
    2023-06-24 02:00:03下载
    积分:1
  • C# 使用定时器动画摆动显示图形
    C# 使用定时器动画摆动显示图形,利用定时器可改变物体运动的振幅、角频率、初相,初始化图形数据,生成如演示效果所示的,圆形小球来回摆动的动画效果。你可以通过窗口中的两个按钮,来查看效果:启动有窗体定时器、关闭有窗体定时器。初始化图形数据的代码如下:   this.timer1.Interval = 30;   r1.X = System.Convert.ToInt16(this.panel1.Width / 2 - 30);   r1.Y = System.Convert.ToInt16(this.panel1.Height / 2 - 30);   r1.Width = 60;   r1.Height = 60;   r2 = r1;   x = System.Convert.ToInt16(this.panel1.Width / 2);
    2022-03-03 11:34:28下载
    积分:1
  • C# 设置IE地址栏的自动完成功能
    C# 设置IE地址栏的自动完成功能,就是用户输入的时候,会下拉提示出相关的内容,可提升用户体验,现在使用已经很广泛了,本例子中的这一自动完成功能,代码如下:   private void button1_Click(object sender, EventArgs e)   {    //创建或者打开指定的注册表项    RegistryKey rgK =Registry.CurrentUser.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionExplorerAutoComplete");    rgK.SetValue("AutoSuggest", "yes", RegistryValueKind.String);//设置IE地址栏的自动完成功能    MessageBox.Show("设置成功!");   }   private void button2_Click(object sender, EventArgs e)   {    //创建或者打开指定的注册表项    RegistryKey rgK =Registry.CurrentUser.CreateSubKey(@"SoftwareMicrosoftWindowsCurrentVersionExplorerAutoComplete");    rgK.SetValue("AutoSuggest", "no", RegistryValueKind.String);//取消IE地址栏的自动完成功能    MessageBox.Show("取消成功!");   }
    2022-12-03 17:35:03下载
    积分:1
  • C# 启动外部计算器计算数据
    C# 启动外部计算器计算数据,private void button1_Click(object sender, EventArgs e)   {//启动计算器计算数据(从当前程序向其他程序发送键击数据)    ProcessStartInfo MyStartInfo = new ProcessStartInfo();    MyStartInfo.FileName = "Calc.exe";    Process MyProcess = new Process();    MyProcess.StartInfo = MyStartInfo;    MyProcess.Start();    System.Threading.Thread.Sleep(100);    IntPtr MyHandle = FindWindow("SciCalc", "计算器");    if (MyHandle == IntPtr.Zero)    {    MessageBox.Show("计算器程序没有运行","信息提示",MessageBoxButtons.OK);    return;    }    SetForegroundWindow(MyHandle);    SendKeys.SendWait("88");    SendKeys.SendWait("*");    SendKeys.SendWait("8");    SendKeys.SendWait("=");   }
    2023-04-17 08:10:03下载
    积分:1
  • 696518资源总数
  • 105877会员总数
  • 14今日下载