易语言多线程操作模块源码
系统结构:时间_现行时间,互斥锁创建,互斥锁销毁,互斥锁锁定,互斥锁解锁,互斥锁异步锁定,线程启动,线程启动多参,线程创建扩展,线程销毁,线程退出,线程等待,线程强制结束,线程键创建,线程键删除,线程键取值,线程键置值,条件锁创建,条件锁销毁,条件锁触发,条件锁广播,条件锁等待,读写锁创建,读写锁销毁,读写锁读锁定,读写锁写锁定,读写锁解锁,原子相加,原子相减,原子自增,原子自减,原子赋值,原子取值,原子比较赋值,原子比较赋值_指针,原子交换,原子交换_指针,原子自增_指针,原子自减_指针,原子锁定,原子解锁,TASK_PRIORITY_SEG,线程池销毁,线程池提交任务,线程池插入任务,线程池计划任务,线程池取消任务,线程池创建,节点置前,节点取前,节点置后,节点取后,节点初始,节点断开,节点移除,节点连接前,节点连接后,节点插入前,节点插入后,链表初始,链表是空,链表取首,链表取尾,链表插入首,链表插入尾,链表合并首,链表合并尾,链表弹出首,链表弹出尾,链表长度,InitializeCriticalSection,DeleteCriticalSection,EnterCriticalSection,LeaveCriticalSection,TryEnterCriticalSection,TlsAlloc,TlsFree,TlsSetValue,TlsGetValue,RtlMoveMemory,RtlZeroMemory,GetProcessHeap,LocalAlloc,LocalFree,LocalSize,HeapAlloc,HeapFree,CreateSemaphore,ReleaseSemaphore,CloseHandle,WaitForSingleObject,CreateEvent,SetEvent,ResetEvent,CreateMutex,OpenMutex,ReleaseMutex,InterlockedExchangeAdd,InterlockedIncrement,InterlockedDecrement,InterlockedExchange,InterlockedCompareExchange,GetLastError,CreateThread,ExitThread,GetCurrentThread,GetExitCodeThread,TerminateThread,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ _读整数
| |
| |------ _写整数
| |
| |------ _读长整数
| |
| |------ _写长整数
| |
| |------ _读字节
| |
| |------ _写字节
| |
| |------ _读索引
| |
| |------ _写索引
| |
| |------ _写自增
| |
| |------ _写自减
| |
| |------ _指针_整数型
| |
| |------ _指针_长整数
| |
| |------ _指针_日期型
| |
| |------ _内存申请
| |
| |------ _内存释放
| |
| |------ 时间_现行时间
| |
| |------ _调用函数
| |
| |
======程序集_互斥锁
| |
| |------ 互斥锁创建
| |
| |------ 互斥锁销毁
| |
| |------ 互斥锁锁定
| |
| |------ 互斥锁解锁
| |
| |------ 互斥锁异步锁定
| |
| |
======程序集_多线程
| |
| |------ __线程回调函数
| |
| |------ __线程调用子程序
| |
| |------ 线程启动
| |
| |------ 线程启动多参
| |
| |------ 线程创建扩展
| |
| |------ 线程销毁
| |
| |------ 线程退出
| |
| |------ 线程等待
| |
| |------ 线程强制结束
| |
| |------ 线程键创建
| |
| |------ 线程键删除
| |
| |------ 线程键取值
| |
| |------ 线程键置值
| |
| |
======程序集_条件锁
| |
| |------ 条件锁创建
| |
| |------ 条件锁销毁
| |
| |------ 条件锁触发
| |
| |------ 条件锁广播
| |
| |------ 条件锁等待
| |
| |------ __条件锁_超时等待
| |
| |
======程序集_读写锁
| |
| |------ 读写锁创建
| |
| |------ 读写锁销毁
| |
| |------ 读写锁读锁定
| |
| |------ 读写锁写锁定
| |
| |------ 读写锁解锁
| |
| |
======程序集_原子操作
| |
| |------ 原子相加
| |
| |------ 原子相减
| |
| |------ 原子自增
| |
| |------ 原子自减
| |
| |------ 原子赋值
| |
| |------ 原子取值
| |
| |------ 原子比较赋值
| |
| |------ 原子比较赋值_指针
| |
| |------ 原子交换
| |
| |------ 原子交换_指针
| |
| |------ 原子自增_指针
| |
| |------ 原子自减_指针
| |
| |------ 原子锁定
| |
| |------ 原子解锁
| |
| |
======程序集_线程池
| |
| |------ TASK_PRIORITY_SEG
| |
| |------ __任务权限分割
| |
| |------ __取等待时间
| |
| |------ __线程池_调度函数
| |
| |------ __线程池_新建任务
| |
| |------ __线程池_添加任务_空
| |
| |------ __线程池_添加任务
| |
| |------ __线程池_移除任务
| |
| |------ __线程池_添加计划任务
| |
| |------ __线程池_移除计划任务
| |
| |------ __线程池_弹出任务
| |
| |------ __线程池_等待繁忙线程
| |
| |------ __线程池_新建线程
| |
| |------ 线程池销毁
| |
| |------ 线程池提交任务
| |
| |------ 线程池插入任务
| |
| |------ 线程池计划任务
| |
| |------ 线程池取消任务
| |
| |------ 线程池创建
| |
| |
======程序集_链表操作
| |
| |------ 节点置前
| |
| |------ 节点取前
| |
| |------ 节点置后
| |
| |------ 节点取后
| |
| |------ 节点初始
| |
| |------ 节点断开
| |
| |------ 节点移除
| |
| |------ 节点连接前
| |
| |------ 节点连接后
| |
| |------ 节点插入前
| |
| |------ 节点插入后
| |
| |------ 链表初始
| |
| |------ 链表是空
| |
| |------ 链表取首
| |
| |------ 链表取尾
| |
| |------ 链表插入首
| |
| |------ 链表插入尾
| |
| |------ 链表合并首
| |
| |------ 链表合并尾
| |
| |------ 链表弹出首
| |
| |------ 链表弹出尾
| |
| |------ 链表长度
| |
| |
======调用的Dll
| |
| |---[dll]------ InitializeCriticalSection
| |
| |---[dll]------ DeleteCriticalSection
| |
| |---[dll]------ EnterCriticalSection
| |
| |---[dll]------ LeaveCriticalSection
| |
| |---[dll]------ TryEnterCriticalSection
| |
| |---[dll]------ TlsAlloc
| |
| |---[dll]------ TlsFree
| |
| |---[dll]------ TlsSetValue
| |
| |---[dll]------ TlsGetValue
| |
| |---[dll]------ RtlMoveMemory
| |
| |---[dll]------ RtlZeroMemory
| |
| |---[dll]------ GetProcessHeap
| |
| |---[dll]------ LocalAlloc
| |
| |---[dll]------ LocalFree
| |
| |---[dll]------ LocalSize
| |
| |---[dll]------ HeapAlloc
| |
| |---[dll]------ HeapFree
| |
| |---[dll]------ CreateSemaphore
| |
| |---[dll]------ ReleaseSemaphore
| |
| |---[dll]------ CloseHandle
| |
| |---[dll]------ WaitForSingleObject
| |
| |---[dll]------ CreateEvent
| |
| |---[dll]------ SetEvent
| |
| |---[dll]------ ResetEvent
| |
| |---[dll]------ CreateMutex
| |
| |---[dll]------ OpenMutex
| |
| |---[dll]------ ReleaseMutex
| |
| |---[dll]------ InterlockedExchangeAdd
| |
| |---[dll]------ InterlockedIncrement
| |
| |---[dll]------ InterlockedDecrement
| |
| |---[dll]------ InterlockedExchange
| |
| |---[dll]------ InterlockedCompareExchange
| |
| |---[dll]------ GetLastError
| |
| |---[dll]------ CreateThread
| |
| |---[dll]------ ExitThread
| |
| |---[dll]------ GetCurrentThread
| |
| |---[dll]------ GetExitCodeThread
| |
| |---[dll]------ TerminateThread
调用的DLL命令:
.DLL命令 InitializeCriticalSection, , "kernel32", "InitializeCriticalSection", , 创建许可证
.参数 lpCriticalSection, 整数型
.DLL命令 DeleteCriticalSection, , "kernel32", "DeleteCriticalSection", , 删除许可证
.参数 lpCriticalSection, 整数型
.DLL命令 EnterCriticalSection, , "kernel32", "EnterCriticalSection", , 进入许可区
.参数 lpCriticalSection, 整数型
.DLL命令 LeaveCriticalSection, , "kernel32", "LeaveCriticalSection", , 退出许可区
.参数 lpCriticalSection, 整数型
.DLL命令 TryEnterCriticalSection, 整数型, , "TryEnterCriticalSection"
.参数 lpCriticalSection, 整数型
.DLL命令 TlsAlloc, 整数型, "Kernel32", "TlsAlloc"
.DLL命令 TlsFree, 逻辑型, "Kernel32", "TlsFree"
.参数 dwTlsIndex, 整数型
.DLL命令 TlsSetValue, 逻辑型, "Kernel32", "TlsSetValue"
.参数 dwTlsIndex, 整数型
.参数 lpTlsValue, 整数型
.DLL命令 TlsGetValue, 整数型, "Kernel32", "TlsGetValue"
.参数 dwTlsIndex, 整数型
.DLL命令 RtlMoveMemory, 整数型, "kernel32.dll", "RtlMoveMemory"
.参数 lpvDest, 整数型
.参数 lpvSource, 整数型
.参数 cbCopy, 整数型
.DLL命令 RtlZeroMemory, , "kernel32.dll", "RtlZeroMemory"
.参数 Destination, 整数型
.参数 Length, 整数型
.DLL命令 GetProcessHeap, 整数型, "kernel32.dll", "GetProcessHeap"
.DLL命令 LocalAlloc, 整数型, "kernel32.dll", "LocalAlloc", , hMem
.参数 uFlags, 短整数型
.参数 uBytes, 整数型
.DLL命令 LocalFree, 整数型, "kernel32.dll", "LocalFree"
.参数 hMem, 整数型, , hMem
.DLL命令 LocalSize, 整数型, "kernel32.dll", "LocalSize"
.参数 hMem, 整数型
.DLL命令 HeapAlloc, 整数型, "kernel32.dll", "HeapAlloc", , lpMem,失败返回0
.参数 hHeap, 整数型
.参数 dwFlags, 整数型, , #HEAP_
.参数 dwBytes, 整数型
.DLL命令 HeapFree, 逻辑型, "kernel32.dll", "HeapFree", , 失败返回0
.参数 hHeap, 整数型
.参数 dwFlags, 整数型, , #HEAP_NO_SERIALIZE,1
.参数 lpMem, 整数型
.DLL命令 CreateSemaphore, 整数型, "Kernel32", "CreateSemaphoreA"
.参数 lpSemaphoreAttributes, 整数型
.参数 lInitialCount, 整数型
.参数 lMaximumCount, 整数型
.参数 lpName, 整数型
.DLL命令 ReleaseSemaphore, 整数型, "Kernel32", "ReleaseSemaphore"
.参数 hSemaphore, 整数型
.参数 lReleaseCount, 整数型
.参数 lpPreviousCount, 整数型
.DLL命令 CloseHandle, 整数型
.参数 handle, 整数型
.DLL命令 WaitForSingleObject, 整数型, "kernel32", "WaitForSingleObject", , 监测一个对象
.参数 hHandle, 整数型
.参数 dwMilliseconds, 整数型
.DLL命令 CreateEvent, 整数型, , "CreateEventA"
.参数 lpEventAttributes, 整数型
.参数 bManualReset, 逻辑型
.参数 bInitialState, 逻辑型
.参数 lpName, 整数型
.DLL命令 SetEvent, 整数型, "Kernel32", "SetEvent"
.参数 hEvent, 整数型
.DLL命令 ResetEvent, 整数型, "Kernel32", "ResetEvent"
.参数 hEvent, 整数型
.DLL命令 CreateMutex, 整数型, , "CreateMutexA"
.参数 lpMutexAttributes, 整数型
.参数 bInitialOwner, 逻辑型
.参数 lpName, 整数型
.DLL命令 OpenMutex, 整数型, , "OpenMutexA"
.参数 dwDesiredAccess, 整数型
.参数 bInheritHandle, 逻辑型
.参数 lpName, 整数型
.DLL命令 ReleaseMutex, 整数型, , "ReleaseMutex"
.参数 hMutex, 整数型
.DLL命令 InterlockedExchangeAdd, 整数型, "Kernel32", "InterlockedExchangeAdd"
.参数 Addend, 整数型
.参数 Value, 整数型
.DLL命令 InterlockedIncrement, 整数型, "Kernel32", "InterlockedIncrement"
.参数 Addend, 整数型
.DLL命令 InterlockedDecrement, 整数型, "Kernel32", "InterlockedDecrement"
.参数 Addend, 整数型
.DLL命令 InterlockedExchange, 整数型, "Kernel32", "InterlockedExchange"
.参数 Target, 整数型
.参数 Value, 整数型
.DLL命令 InterlockedCompareExchange, 整数型, "Kernel32", "InterlockedCompareExchange"
.参数 Destination, 整数型
.参数 Exchange, 整数型
.参数 Comparand, 整数型
.DLL命令 GetLastError, 整数型
.DLL命令 CreateThread, 整数型, "kernel32", "CreateThread", , 启动线程
.参数 lpThreadAttributes, 整数型
.参数 dwStackSize, 整数型
.参数 lpStartAddress, 整数型
.参数 lpParameter, 整数型
.参数 dwCreationFlags, 整数型
.参数 lpThreadId, 整数型, 传址
.DLL命令 ExitThread, , "Kernel32", "ExitThread"
.参数 dwExitCode, 整数型
.DLL命令 GetCurrentThread, 整数型, "kernel32", "GetCurrentThread "
.DLL命令 GetExitCodeThread, 整数型, "kernel32", "GetExitCodeThread"
.参数 hThread, 整数型
.参数 lpExitCode, 整数型, 传址
.DLL命令 TerminateThread, 整数型, "kernel32", "TerminateThread", , 中止线索
.参数 hThread, 整数型
.参数 dwExitCode, 整数型
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。