当前位置: 首页 > news >正文

简单的手机网站模板免费下载电脑培训班价目表

简单的手机网站模板免费下载,电脑培训班价目表,山西搜索引擎优化,属于o2o的电商平台有哪些Unity的实体组件系统(ECS)是支撑DOTS模块和技术的面向数据架构。ECS为Unity中的内存数据和runtime进程调度提供了高度的控制和确定性。 ECS for Unity 2022 LTS 配备了两个兼容的物理引擎,一个高级的Netcode package,以及一个用来…

Unity的实体组件系统(ECS)是支撑DOTS模块和技术的面向数据架构。ECS为Unity中的内存数据和runtime进程调度提供了高度的控制和确定性。

ECS for Unity 2022 LTS 配备了两个兼容的物理引擎,一个高级的Netcode package,以及一个用来将大量ECS数据渲染到Unity的可编程渲染管线(SRP)、通用渲染管线(URP)和高清晰度渲染管线(HDRP)的渲染框架。这套ECS框架与GameObject数据兼容,允许你使用一些Unity 2022 LTS中尚未原生支持ECS的系统,如动画、导航、输入或地形。

本节重点介绍DOTS的功能,以及它们如何帮助开发者避免前面提到的会造成CPU性能瓶颈的代码。

学习有关DOTS具体内容的最佳起点是EntityComponentSystemSamples Github,它包含了说明书和视频的同时还包含许多示例工程。

然而,在深入学习这些示例之前,我们先来看看用于构建这套技术栈的功能和模块。

C#job系统

C#job系统提供了一种简单高效的方式来编写多线程代码,帮助你的应用充分利用所有可用的CPU核心。

与DOTS的其他功能不同,job系统不是一个单独的模块,而是包含在Unity核心模块中。

因为MonoBehaviour的更新只在主线程上执行,所以许多Unity游戏最终都会把所有游戏逻辑都运行在一个CPU核心上。为了利用额外的核心,你可以手动创建和管理额外的线程,但这样做在提高代码难度的同时又提高了代码风险。

作为一种更简单的替代方案,Unity提供了C#job系统:

job系统维护一个job线程池,每个目标平台的额外核心对应一个线程。例如,当Unity在八个核心上运行时,它会创建一个主线程和七个job线程。

job线程执行称为job的工作单元。当job线程空闲时,它会从job队列中拉取下一个可用的job进行执行。

一旦某个job开始在job线程上执行,它就会一直执行到完成(换句话说,job不会被抢占)

job的调度和完成

job只能被主线程调度(即,添加到job队列中),不能从其他job中被调度。

当主线程调用已调度job的Complete()方法时,它会等待job完成执行(如果job尚未完成)。

只有主线程可以调用Complete()。

Complete()返回后,你可以确定job使用的数据在主线程上可以再次安全访问,并且可以安全地传递给后续的被调度的job。

job安全性检查和依赖关系

在多线程编程中,确保线程安全和管理线程之间的依赖关系对于避免竞态条件、数据损坏和其他并发问题至关重要。解释这些陷阱超出了本指南的范围。关键的要点是理解job系统如何处理安全性检查和依赖关系:

为了确保隔离性,每个job都有自己的私有数据,主线程和其他job无法访问这些数据。

然而,job也可能需要与彼此或主线程共享数据。 共享相同数据的job不应并发执行,因为这会导致竞态条件。因此,当你调度可能互相冲突的job时,job系统的“安全检查”会抛出错误。

在调度job时,你可以声明它依赖于之前调度的job。 job线程在执行某个job前会保证它依赖的所有的job都执行完成,这样你就可以安全地调度本来可能会冲突的job。例如,如果jobA和jobB都访问相同的数组,你可以让jobB依赖于jobA。 这确保jobB不会在jobA完成之前执行,从而避免任何可能的冲突。

完成一个job时,代表已经完成了它直接或间接依赖的所有job。

许多Unity功能内部都在使用job系统,因此在Profiler中,你会看到不仅仅是你自己调度的job在job线程上运行。

注意,job仅用于处理内存中的数据,而不是执行I/O(输入输出)操作,例如读取和写入文件或通过网络连接发送和接收数据。因为一些I/O操作可能会阻塞调用线程,在job中执行它们会违背最大化CPU核心利用率的目标。如果你想做多线程的I/O job,你应该从主线程调用异步API或使用传统的C#多线程。

http://www.ritt.cn/news/11364.html

相关文章:

  • 网站建设 模块nba最快的绝杀
  • wordpress调用昵称东莞优化排名推广
  • 国外可以用什么网站做问卷北京网站优化培训
  • 广东建设继续教育网站首页兰州疫情最新情况
  • 沈阳模板建站软件上海seo
  • 艺术网站模板百度提交入口网址是什么
  • 做网站购买服务器多少钱友情链接互换网站
  • 网站开发的比较上海百度关键词推广
  • 权威的电商网站建设百度快照的作用是什么
  • 视听节目 网站建设360点睛实效平台推广
  • 网站建设的经验总结重庆seo论
  • 公司门户网站怎么做微信营销推广的方式有哪些
  • html5 网站案例百度推广竞价是什么意思
  • 品牌型网站建设百度推广退款电话
  • 上海有几个区几个县苏州seo免费咨询
  • 网上商城网站 找什么做个人怎么在百度上做推广
  • 做微博分析的网站线上推广外包公司
  • 怎么让网站让百度收录怎么申请域名建立网站
  • 扁平化中文网站模板下载公众号引流推广平台
  • 宁夏网站建设多少钱百度怎么注册自己的网站
  • 招聘做网站专业人员百度一下你就知道主页
  • 怎么才能创建网站seo网站推广首页排名
  • 做网站凡科如何网络营销师资格证报名
  • 中国平面设计网站新闻发布会新闻通稿
  • 嘉兴网站建设一薇seo公司的选上海百首网络
  • 杭州做网站哪家便宜百度seo刷排名软件
  • 微信做网站在线咨询 1 网站宣传
  • 阿里企业邮箱登陆入口网站seo运营培训机构
  • 汕头网站建设推广哪家好保定网站建设公司哪家好
  • 石家庄做外贸网站建设网络媒体有哪些