-
C# LockThread()锁定线程以实现线程同步
C# 使用LockThread()方法实现线程监视监控的例子,锁定线程以实现线程同步,实现方法比较简单,可参考以下的代码,完整的代码可在本网页下载:
static void Main(string[] args)
{
Program myProgram = new Program();//实例化类对象
myProgram.LockThread(); //调用锁定线程方法
Console.ReadLine();
}
void LockThread()
{
Monitor.Enter(this);//锁定当前线程
Console.WriteLine("锁定线程以实现线程同步");
Monitor.Exit(this); //释放当前线程
}
- 2022-02-20 05:30:05下载
- 积分:1
-
ATK-ESP8266 WIFI模块资料
1、ATK-ESP8266 WIFI 模块简介 ATK-ESP8266 是 ALIENTEK 推出的一款高性能的 UART-WiFi(串口-无线)模块,ATK-ESP8266 板载ai-thinker公司的ESP8266模块,该模块通过 FCC,CE认证,可直接用于产品出口欧美地区。 ATK-ESP8266模块采用串口(LVTTL)与MCU(或其他串口设备)通信,内置 TCP/IP协议栈,能够实现串口与WIFI之间的转换。 通过 ATK-ESP8266 模块,传统的串口设备只是需要简单的串口配置,即可通过网络(WIFI)传输自己的数据。 ATK-ESP8266 模块支持 LVTTL串口,兼容3.3V和5V单片机系统,可以很方便的与你的产品进行连接。模块支持串口转 WIFI STA、串口转 AP 和WIFI STA+WIFI AP 的模式,从而快速构建串口-WIFI数据传输方案,方便你的设备使用互联网传输数据。 ATK-ESP8266 29mm*19mm 6 2.54mm
- 2022-08-13 08:01:09下载
- 积分:1
-
改善C#的157个建议编写高质量代码_源代码合集
改善C#的157个建议编写高质量代码_源代码合集,这些实例均采用4.0框架,请运行使用Release模式;部分TIP由于简单未给出源码;这157个建议的源码涉及到语言篇、集合和LINQ、泛型、委托和事件、资源管理和序列化、异常与自定义异常、异步、多线程、任务和并行、架构篇成员设计、类型设计、安全性设计、编码规范及习惯、代码整洁、规范开发行为等,每类细分一共形成了157条建议,相信这些建议对于向高深进阶的C#开发者来说,是难得的建议。
- 2022-07-10 03:10:19下载
- 积分:1
-
C# 只允许运行一个程序实例的方法及代码
Visual C# 设置程序只能运行一个实例,当用户再次打开同一窗口时,会弹出提示,告诉你本程序已经在运行了,具体的实现代码参考如下:
设置程序只能运行一个实例:
var MyModuleName = System.Diagnostics.Process.GetCurrentProcess().MainModule.ModuleName;
var MyProcessName =System.IO.Path.GetFileNameWithoutExtension(MyModuleName);
System.Diagnostics.Process[] MyProcesses = System.Diagnostics.Process.GetProcessesByName(MyProcessName);
if (MyProcesses.Length > 1)
{
MessageBox.Show("程序已经运行!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
this.Close();
}
- 2023-03-23 03:40:03下载
- 积分:1
-
C# DataGridView初级操作范例
这是一个C# DataGridView初级操作范例,演示了连接数据库、读取数据库、移动数据库指针到下一条、上一条记录的操作,以及将数据绑定到DataGridView控件中显示的整个过程,比较基础级的C#源码,因此希望新手参考:
private void shippersDataGridView_DataError(object sender, DataGridViewDataErrorEventArgs e)
{//如果错误发生在提交操作过程中,则在 MessageBox 中显示该错误
if (e.Exception != null && e.Context == DataGridViewDataErrorContexts.Commit)
{//测试时在Phone列中输入一个超长的字符串
MessageBox.Show(e.Exception.Message, "信息提示", MessageBoxButtons.OK);
}
}
- 2022-01-22 02:28:43下载
- 积分:1
-
中国象棋源代码
中国象棋源代码,使用Visual c++编写,对喜欢象棋的朋友,可以研究一下算法,具有很好的参考价值~
- 2022-06-03 11:54:15下载
- 积分:1
-
C# 创建SQL RAND()随机数查询数据库
C# 随机读取数据库中几条记录,使用了SQL语句中的RAND()来实现随机查询,根据生成的随机数查询记录,最终将查询的数据返回到DataTable对象中显示出来,实现本随机查询的核心代码如下示:
string P_Str_ConnectionStr = string.Format(//创建数据库连接字符串
@"server=WIN-GI7E47AND9RLS;database=db_TomeTwo;uid=sa;pwd=");
string P_Str_SqlStr = string.Format(//创建SQL查询字符串
"SELECT * FROM tb_Student WHERE 学生编号=22050110+FLOOR(RAND()*10)");//创建了随机查询
SqlDataAdapter P_SqlDataAdapter = new SqlDataAdapter(//创建数据适配器
P_Str_SqlStr, P_Str_ConnectionStr);
DataTable P_dt = new DataTable();//创建数据表
P_SqlDataAdapter.Fill(P_dt);//填充数据表
return P_dt;//返回数据表
- 2023-08-22 05:10:03下载
- 积分:1
-
C# 根据文件名提取文件类型图标
C# 根据文件名提取文件类型图标,设定好文件目录后,本例中是读取C:Windows下的所有文件,并根据文件类型自动显示图标,如测试图所示,将文件类型的图标添加到listView中,下面是具体的实现代码:
this.imageList1.Images.Clear();
this.listView1.Items.Clear();
string MyFolder = @"C:Windows";
DirectoryInfo MyDir = new DirectoryInfo(MyFolder);
ListViewItem MyItem;
this.listView1.BeginUpdate();
foreach (FileInfo MyFile in MyDir.GetFiles())
{
Icon MyIcon = SystemIcons.WinLogo;
MyItem = new ListViewItem(MyFile.Name, 1);
MyIcon = Icon.ExtractAssociatedIcon(MyFile.FullName);
if (!this.imageList1.Images.ContainsKey(MyFile.Extension))
{
MyIcon =Icon.ExtractAssociatedIcon(MyFile.FullName);
this.imageList1.Images.Add(MyFile.Extension, MyIcon);
}
MyItem.ImageKey = MyFile.Extension;
this.listView1.Items.Add(MyItem);
}
- 2023-07-30 19:25:04下载
- 积分:1
-
tms320f28069例程
各种外设历程。包含 头文件 以及IQmath库。以及带bios系统的cmd文件 和 不带bios系统的cmd文件F2806x_Headers_BIOS.cmd F2806x_Headers_noBIOS.cmd
- 2023-08-22 09:45:04下载
- 积分:1
-
7Zip
This file is part of SevenZipSharp. SevenZipSharp is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. SevenZipSharp is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with SevenZipSharp. If not, see .
- 2022-07-20 00:09:31下载
- 积分:1