hxhb / HotPatcher

Unreal Engine hot update manage and package plugin.
https://imzlp.com/posts/17590/
MIT License
1.23k stars 333 forks source link

发布基础版本会一直循环,发布补丁会无法生成release.json文件 #60

Closed gameiw closed 2 years ago

gameiw commented 2 years ago

image image 文件导出了,但是进程没有自动停止。 image image 发布补丁无法生成release.json文件 image 进程也无法自动停止 image

Za0Shu1 commented 2 years ago

这个问题修复了没

hxhb commented 2 years ago

在UE5.0.3中测试未复现,提供更多信息后可以Repoen。

TroutZhang commented 1 year ago

@hxhb 遇到同样的问题, v76.3 with UE 5.0.3。 Reopen 这个issue吧。

第一个小问题ByRelease的,我这里注释代码绕开解决了,是http请求没处理完一直在模块 http卸载的时候等待导致的。 你的请求版本信息的 http request能执行完,但是另外一个注册项目信息的我这里执行不完,所以就一直卡那里了。 注释掉的代码如下 image

第二个小问题ByPatch的,我这里发现是因为所有线程都在sleep wait, 正在进一步调试中。 callstack如下: image

TroutZhang commented 1 year ago

第二个小问题关于 ByPatch的,已经修复在 PR #86 , 本质上是因为原来的代码只是在用Sleep等,而没有去"tick" 异步任务,导致无限期的白等下去,永远不会结束

具体在我的关卡改动后的patch-cook流程里,表现为是StaticMesh的 IsCompile永远为true导致Object->IsCachedCookedPlatformDataLoaded(TargetPlatform)也永远为true。

TroutZhang commented 1 year ago

第一个小问题关于ByRelease的,因为其实Release的json是生成完毕的,只是进程退出时候卡在永不结束的一个我觉得不重要的http request上,所以没有深究下去,仅仅是如上回复中的图片那样注释了,也就没有提PR。

第二个小问题关于ByPatch的,则是因为需要的*_P.pak都没生成出来,所以才去调试修复了。

TroutZhang commented 1 year ago

@gameiw @Za0Shu1 如果你们还有类似问题,可以试试我的PR。