UE4套件-多线程库开发

30 篇文章 2 订阅
22 篇文章 11 订阅

 


哈喽大家好,我叫人宅,这一期我们给大家带来一套工具类教程,如何开发UE4多线程商业库。

本套教程将融合了UE4代理,UE4多线程,UE4智能指针,插件开发等综合知识进阶的技巧,是一套综 合实战课程。,

虽然UE4为我们游戏开发提供了三套多线程解决方案,但是在我们日常开发项目中,依然需要封装和整合UE4线程,比如做服务器开发 or 是引擎开发。如果对多线程使用上只是熟悉或者不太了解的,那么在使用中会出现很多奇奇怪怪的问题,而束手无策。那有没有什么库可以解决这个问题,当然有,非常多,比如std::thread,Boost库等,都提供了丰富的多线程的封装,但是有一点,它们的风格不是UE4C++风格,维护上也是一件很麻烦的事情,因为这些库的源码不可能为你公开的,及时公开, 源码也不一定看得懂。

 

这一期我们来封装一套基于UE4C++商业版本的线程库,直接可以用于项目中,最重要是使用方便,轻巧便捷,维护性强。


我们简单介绍一下这套教程会给您带来哪些技能的知识点;

1. 掌握UE4多线使用,

怎么加锁,如何挂起线程,如何唤醒,如何避免死锁,如何让线程同步,如何异步,如何开启线程,如何安全的销毁线程,如何高效的使用UE4线程,如何创建任务队列,如何搭建和维护自己的线程池。

2 封装技巧

我们主要讲解的是商业版本的多线程库的封装,你可以在该教程中学习到很多高级的封装技巧,如何封装管理类,如何使用模板的高级封装,这些封装最终是让使用者更加便捷,我们会用最少的代码来描述一套商业线程是如何高质量开发出来的,学完这些技巧后您可以运用在自己的项目中,使代码令人眼前一亮。

3 代理的高级运用

我们会讲解代理的高级运用,这套教程您将对代理有了更深刻的理解,这些技巧您将会在日后的项目开发中,让代码更有分量感。

4 协程

我们会讲解什么是协程,怎么使用以及,如何高级的封装UE4协程。

5. 原生多线程

我们会讲解最最原生的多线程案例,UE4的多线程都是基于此API架构的,知彼知己方能百战不殆。

6 UE4异步资源加载系统

我们会封装一套基于UE4的异步加载资源系统,并且会讲解所涉及到UE4异步资源加载类,比如FGCObject,FStreamableManager,FStreamableHandle等类的讲解

7 其他知识点

通过本套教程,您将对UE4多线程的使用有一个非常深刻的认识,不论是做服务器还是客户端,还是热更新,这将是一个非常好的基础。


说了这么多,我们介绍一下每个章节讲解的内容:

第一章 搭建线程插件

这一节我们会讲解如何封装一套属于自己的Runnable多线程,这一节为后面封装线程管理莫定基础。

第二章 封装线程池的同步和异步

这一章我们通过对信号量的设置来实现线程的同步和异步,这一章同样我们会封装我们的代理线程,并且解决线程安全等问题

第三章 封装线程任务管理

这一章我们开始封装线程池任务,我们也称为任务队列,我们可以不断的向任务线程发送任务请求,一旦有闲置线程便可以执行我们的任务,通过这种方式,我们便可以高效的利用我们线程池里面的线程,防止线程资源的浪费,这一节为我们后面搭建服务器有巨大的帮助。

当然我们还会分析该插件跨平台问题等。

第四章 通过模板高效封装UE4线程

我们已经封装代理线程和任务线程,UE4Abandonable线程,这一章我们开始通过模板整合这三种线程通用的函数,使其结构更加精炼,使用上风格更加统一,最后我们再加入协程,并且讲解什么是协程,最终我们会将协程封装到我们的插件中。

第五章 前置任务线程封装

这一节我们开始封装UE4使用频率最高的线程Graph线程,我们也会讲解如何封装我们的渲染线程,这对我们以后学习渲染有很大的帮助哦~

当然我们还会讲解如何封装我们的原生Windows线程,理解并且使用我们的它。

第六章 封装异步资源管理

这节我们开始讲解异步资源管理,并且将它进行高级封装,最终效果是方便又实用,而且我们还会讲解里面涉及到的异步管理,以及GCObject类讲解等。

第七章 如何使用SimpleThread

这一章我们主要是以测试线程为主,通过前面的各种封装,这一章是真正检验我们线程插件商业价值的地方.这一章我们会讲解如何使用代理线程,任务线程,同步异步线程,资源管理线程,图表线程,协程,以及各种宏线程。

 

宣传视频:

视频封面

上传视频封面

UE4套件-多线程库开发

 

以下是本套教程的目录

 

第一章 搭建线程插件

1-1 创建线程插件

1-2 创建线程接口

1-3 封装Runnable线程

1-4 封装线程池管理

 

第二章 封装线程池同步异步

2-1 建立线程绑定执行机制

2-2 如何正确删除线程

2-3线程安全与线程同步

2-4 Bind匹配代理模板

2-5 线程异步问题

 

第三章 封装任务管理

3-1 自动化任务队列设计

3-2 封装信号量

3-3 高级封装线程管理接口

3-4 高级封封装代理线程管理

3-5 高级封装任务线程管理和总管理

3-6 插件的跨平台问题

 

第四章 通过模板高效的封装UE4线程

4-1 利用宏编程实现UE4线程池同步和异步

4-2 封装线程同步和异步到管理

4-3 通过模板匹配同意代理接口

4-4 什么是协程

4-5 封装协程对象

4-6 封装协程管理

 

第五章 前置任务线程封装

5-1 封装前置任务UE4线程管理

5-2充分发挥Graph线程特性

5-3 CreateThreadWindowsAPI封装

5-4 渲染线程讲解

 

第六章 封装异步资源读取

6-1 封装资源异步加载

6-2 StreamableManager讲解

6-3FGCObject讲解

6-4FStreamableHandle讲解

 

第七章 如何使用SimpleThread

7-1测试Proxy线程解决线程绑定和销毁问题

7-2测试Task线程解决传值的乱码问题

7-3测试Abandonable线程的同步异步

7-4 测试协程

7-5测试Graph线程和Windows线程

7-6测试异步资源加载使用

 

 

通过这套教程您可以学到哪些内容?

1. 如何使用线程,理解同步和异步的封装以及使用,理解并且运用线程挂起和唤醒技巧,锁的使用,如何规避死锁等

2. 如何优雅的封装多线程,如何设计出令人眼前一亮的代码。

3. 理解资源异步读取的使用,这一块我们会对着UE4文件讲解,并且讲解里面涉及到的函数使用方法

4. 协程的封装和使用,理解协程,并且封装协程

5. 代理的高级运用等

如果遇到不会的问题可以及时问我。

 

 

 

本套教程地址

Unreal Engine 4套件开发系列教程:多线程库

作者的其他文章地址

人宅系列

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值