前言 ● 炫语言嵌入C++代码非常之方便,结合AI使用简直爽的不要不要的,本文以多线程为例,简单介绍下相关使用 实现多线程方式(详细的优缺点对比请自行AI) ● 创建线程 ◆ 使用WINAPI:主要使用windows的API函数CreateThread()或MSVC CRT函数_beginthread()(beginthread方式本文略过,与CreateThread大同小异)。在炫语言中目前可以使用炫易模块(本文以手搓嵌入式演示,主要演示嵌入C++代码开发) 特点: 1、_beginthread()实际实现方式也是依靠CreateThread(),所以不能跨平台 2、使用难度略高,虽说就几个函数,但要对多线程有一定了解才能用的不出BUG(例如挂起线程和恢复线程) 3、CreateThread的线程函数为固定式模版,返回值为固定的DWORD类型,参数也只接受一个指针,如需多个参数,一般需要自定义结构体再相互读取较为繁琐,炫语言中写法: 函数 DWORD WINAPI 线程模板函数(LPVOID 参数指针) ◆ 使用C++的thread库:C++11标准的线程库 特点: 可跨平台、使用简单,函数无固定模板,返回值可以任意,参数可以多样、多个 ◆ 使用炫语言官方的<线程池>模块:使用的thread库进行的包装 特点:相比thread库肯定更方便,特点也不需要多说了,用了就懂,详见大佬的教程帖和老板的模块示例,本帖就不再重复,本帖主要目的是演示炫语言嵌入C++代码开发
详细图文请自行下载
|