- 博客(65)
- 收藏
- 关注
原创 关于UnityWebgl缓存机制
最近在做UnityWebgl热更的时候,我的热更程序集更新,而我所有运行过项目的设备都没有更新成功。因此,你可以成功写入文件,但这些文件是存在于浏览器的IndexedDB中,而不是本地文件系统中。我这里使用的是HybirdCLR做代码热更,发现这个热更程序集会被浏览器缓存,所以热更后浏览器依然读的是缓存的旧程序集。那么既然我已经可以直接用File读到缓存的文件了,那么说明我也可以去判断程序集是否更新,通过MD5也行、版本控制都可以。3、第二次进入,直接就可以读了,那么说明确实是缓存成功了。
2024-06-18 10:47:11
2329
1
原创 Unity——VContainer的依赖注入
由于我们使用的是Unity,而主要的Mono不支持构造函数。所以我们这里选择注入方式主要是特性注入和方法注入三、VContainer案例1、注册类型2、方法注入这里实现接口IStartable和ITickable。它是不依赖于Mono的接口,因此性能上更好,另一方面,IStartable与Mono的Start,ITickable与Mono的Update都是相同的。(2)基础MVC功能:Model层View层Control层。
2024-01-11 17:14:34
2443
1
原创 C# .Net学习笔记—— 异步和多线程(await/async)
1、控制台测试await/async2、C# 5.0 .Net framework4.5 CLR4.0 以后才有,本身是一种语法糖从打印出来的两种执行顺序来看,加了await以后,主线程运行到await这行就会执行回主线程任务。而await后面的代码将由主线程或其他线程来执行await后面的代码,会被封装成委托,在await task之后成为回调(编译器功能,状态机实现) ,这个回调的线程是不确定的,可能是主线程,可能是子线程也可能是其他线程。它可以等价于这里包起来。
2024-01-05 16:46:41
1086
原创 C# .Net学习笔记—— 异步和多线程(异常处理)
1、下面for循环20个线程,到11,12号的时候执行失败,这里我也用了try catch来捕获异常。打印出来发现并没有捕获到异常那么我再新增一句:这样我们就可以成功捕获到异常了。 同时,我们也可以通过AggregateException,捕获到我们异常的数据。多个线程并发,某个失败后,希望别的线程停下来。task外部无法中止,Thread.Abort不靠谱,因为线程是OS的资源,无法掌控啥时候取消线程自己停止自己——公共的访问变量——修改它——线程不断的检测它(会有延迟)Cancellatio
2024-01-05 14:50:53
2184
原创 C# .Net学习笔记—— 异步和多线程(Task)
Task是DotNet3.0之后所推出的一种新的使用多线程的方式,它是基于ThreadPool线程进行封装的。
2024-01-04 18:04:28
1681
原创 Unity——公共Mono模块、没有继承Mono也可以调用协程、统一管理Update
公共Mono模块、没有继承Mono也可以调用协程、统一管理Update
2023-02-23 18:21:10
718
原创 Unity3DVR开发—— XRInteractionToolkit(PicoNeo3、Oculus quest2)
Unity PIcoNeo3
2023-01-25 17:49:00
6984
3
原创 Unity记录——ITween、Dotween实现开关门、判断在门前门后、批量处理单开、双开门以及推拉门
iTween和Dotween实现开关门
2022-11-29 10:47:17
1599
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人