易语言创建线程挂起线程恢复线程销毁线程

您所在的位置:网站首页 线程挂起和恢复 易语言创建线程挂起线程恢复线程销毁线程

易语言创建线程挂起线程恢复线程销毁线程

2024-01-25 23:58| 来源: 网络整理| 查看: 265

线程创建CreateThread,线程挂起SuspendThread,线程恢复ResumeThread,线程销毁TerminateThread,都是kernel32的命令,我们自己封装这些线程的命令,就是便于我们理解他们的工作机制。

511遇见(www.511yj.com)

API源码:

.版本 2 .DLL命令 恢复线程, 整数型, "kernel32", "ResumeThread", , 恢复线程 .参数 hThread, 整数型, , 线程的句柄 .DLL命令 销毁线程, 整数型, "kernel32", "TerminateThread", , 销毁线程 .参数 hThread, 整数型, , 线程的句柄 .参数 dwExitCode, 整数型, , 退出码0 .DLL命令 创建线程, 整数型, "kernel32", "CreateThread", , 创建线程 .参数 lpThreadAttributes, 整数型, , 第一个参数表示线程内核对象的安全属性,一般传入NULL表示使用默认设置。0 .参数 dwStackSize, 整数型, , 第二个参数表示线程栈空间大小。传入0表示使用默认大小(1MB)。0 .参数 子程序指针, 子程序指针, , 第三个参数表示新线程所执行的线程函数地址,多个线程可以使用同一个函数地址。 .参数 lpParameter, 整数型, , 第四个参数是传给线程函数的参数。0 .参数 dwCreationFlags, 整数型, , 第五个参数指定额外的标志来控制线程的创建,为0表示线程创建之后立即就可以进行调度,如果为CREATE_SUSPENDED则表示线程创建后暂停运行,这样它就无法调度,直到调用ResumeThread()。0 .参数 线程Id, 整数型, , 第六个参数将返回线程的ID号,传入NULL表示不需要返回该线程ID号。 .DLL命令 挂起线程, 整数型, "kernel32", "SuspendThread", , 挂起线程 .参数 hThread, 整数型, , 线程的句柄

易语言调用源码:

.版本 2 .支持库 EThread .支持库 spec .程序集 窗口程序集_启动窗口 .程序集变量 许可证1, 整数型 .程序集变量 许可证2, 整数型 .程序集变量 线程句柄1, 整数型 .程序集变量 线程句柄2, 整数型 .子程序 _按钮_线程1_被单击 许可证1 = 创建进入许可证 () 启动线程 (&子_多线程主程序, 许可证1, 线程句柄1) .子程序 _按钮_线程2_被单击 许可证2 = 创建进入许可证 () 启动线程 (&子_多线程主程序, 许可证2, 线程句柄2) .子程序 子_多线程主程序 .参数 许可证, 整数型 .局部变量 i, 整数型 .计次循环首 (1000, i) 进入许可区 (许可证) .判断开始 (许可证 = 许可证1) 编辑框1.加入文本 (到文本 (i) + “我是线程1 |” + #换行符) .判断 (许可证 = 许可证2) 编辑框1.加入文本 (“ #” + 到文本 (i) + “ 我是线程2” + #换行符) .默认 .判断结束 延迟 (1000) 处理事件 () 退出许可区 (许可证) .计次循环尾 () 删除进入许可证 (许可证) .子程序 _按钮_挂起线程1_被单击 挂起线程 (线程句柄1) .子程序 _按钮_挂起线程2_被单击 挂起线程 (线程句柄2) .子程序 _按钮_恢复线程1_被单击 恢复线程 (线程句柄1) .子程序 _按钮_恢复线程2_被单击 恢复线程 (线程句柄2) .子程序 _按钮_关闭线程1_被单击 销毁线程 (线程句柄1, 0) .子程序 _按钮_关闭线程2_被单击 销毁线程 (线程句柄2, 0)

参考原文:第二课易语言大漠多线程API挂起恢复销毁线程



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3