资源简介
大漠最新的c#多线程模板,里面一个完整的例子。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace example
{
public partial class FormMain : Form
{
// 定义一个全局dm对象保持
private dmsoft m_dm;
// 多线程控制
private MultiThread m_multi_thread;
public FormMain()
{
// 初始化这里保存主窗口句柄
AsyncNotify.m_main_hwnd = this.Handle;
SyncNotify.m_main_hwnd = this.Handle;
Log.WriteStr(“main_hwnd = {0}“ AsyncNotify.m_main_hwnd);
// 创建全局对象,此对象必须全程保持,不可释放.
m_dm = new dmsoft();
InitializeComponent();
m_multi_thread = new MultiThread(m_dm);
// 收费注册
int dm_ret = m_dm.Reg(“注册码“ ““);
if (dm_ret != 1)
{
throw new MyException(“收费注册失败返回值:“ + dm_ret.ToString());
}
// 这里可以做一些初始化设定
// 比如开启保护盾设置全局字库等
/*
dm_ret = m_dm.DmGuard(1 “memory“);
if (dm_ret != 1)
{
throw new MyException(“开启保护盾失败:“ + dm_ret.ToString());
}
*/
// 这里我们设置一下全局字库
m_dm.SetPath(“c:\\test_game“);
m_dm.EnableShareDict(1);
//m_dm.SetDict(0“1.txt“);
// 启动Timer
timer_tips.Start();
Log.WriteStr(m_dm.Ver());
}
private void timer_tips_Tick(object sender EventArgs e)
{
lable_tips.Text = “当前对象数量:“ + m_dm.GetDmCount().ToString() + “ 插件版本:“ + m_dm.Ver();
}
private string ThreadStateToString(ThreadState state)
{
string ret = ““;
switch (state)
{
case ThreadState.State_Inactive:
ret = “未启动“;
break;
case ThreadState.State_Starting:
ret = “正在启动..“;
break;
case ThreadState.State_Runing:
ret = “正在运行“;
break;
case ThreadState.State_Pausing:
ret = “正在暂停“;
break;
case ThreadState.State_Pause:
ret = “暂停“;
break;
case ThreadState.State_Resuming:
ret = “正在恢复“;
break;
case ThreadState.State_Stoping:
ret = “正在停止“;
break;
default:
Log.WriteStr(“未定义的线程状态:{0}“ state);
break;
}
return ret;
}
private void UpdateUI(int hwnd int notify_code)
{
script script = m_multi_thread.Getscript(hwnd);
if (script != null)
{
if (notify_code == SyncNotify.Update)
{
list_info.BeginUpdate();
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3923 2018-05-30 15:18 example\example.csproj
文件 74 2018-05-30 15:10 example\example.csproj.user
文件 903 2018-05-30 15:10 example\example.sln
..A..H. 20992 2018-05-30 20:03 example\example.suo
文件 11947 2018-05-30 20:02 example\FormMain.cs
文件 16401 2018-05-30 19:58 example\FormMain.Designer.cs
文件 6012 2018-05-30 19:58 example\FormMain.resx
文件 521 2018-05-30 17:19 example\log.cs
文件 9182 2018-05-30 19:48 example\multi_thread.cs
文件 134155 2018-05-30 19:40 example\obj.cs
文件 4901 2018-05-30 15:19 example\Program.cs
文件 1346 2018-05-30 15:10 example\Properties\AssemblyInfo.cs
文件 2864 2018-05-30 15:10 example\Properties\Resources.Designer.cs
文件 5612 2018-05-30 15:10 example\Properties\Resources.resx
文件 1092 2018-05-30 15:10 example\Properties\Settings.Designer.cs
文件 249 2018-05-30 15:10 example\Properties\Settings.settings
文件 8850 2018-05-30 19:53 example\sc
目录 0 2018-05-30 20:04 example\Properties
目录 0 2018-05-30 20:04 example
----------- --------- ---------- ----- ----
229024 19
相关资源
- C# 调用win32 api函数-user32.dll详细说明
- C# 调用BarTender打印条码DEMO
- 大型比赛竞赛抽签系统 可打印 c# vs
- C#编写的Gerber查看器
- lua C# .Net4.0 vs2010 LuaInterface
- C#十六进制编辑器
- 明华URF-35H读卡器 C#读写源码 为大家
- C#文件流读取CSV文件
- c#读写PDF文件sql
- C# winform Socket大文件传输
- c#车牌识别系统附30张测试图片
- 《C#面向对象程序设计》源代码(CS)
- 金旭亮《C#面向对象程序设计》教案
- 试题库管理系统毕业论文(C#)源程序
- 学校网站原代码(C#.NET)
- C#-数据库操作技术-员工管理系统
- c#web开发入门经典
- C#与Matlab混合编程的几种方式
- c# 开发与 mysql数据库实现的增删改查
- C#异步操作 异步查询数据库 异步处理
- Basler相机通过IO触发源码
- [源代码] 《领域驱动设计 (C# 2008 实
- 松下PLC与C#通讯串口调试入门教程.z
- USB 继电器控制器 LCUS-1 保证能用 c#
- C# AES加密解密小工具
- C#圆形按钮,非常漂亮动态~~
- [精]C#仿QQ右下角弹出提示框()
- C#进程间通信-共享内存代码
- 有史以来最简单的三层(C#)
- vb调用c#编写的串口DLL文件(vb源码
评论
共有 条评论