J3D在UOS+KIRIN崩溃1:直接原因分析

简介: J3D在UOS+KIRIN崩溃1:直接原因分析

代码

 

System.out.println(new VirtualUniverse());
      GraphicsConfigTemplate3D template = new GraphicsConfigTemplate3D();
      System.out.println("template="+template);
      //X11GraphicsDevice
      GraphicsDevice device = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
      System.out.println("device="+device);
      sun.awt.X11GraphicsDevice x11device = (sun.awt.X11GraphicsDevice)device;
      GraphicsConfiguration[]  configs = x11device.getConfigurations();
      config = template.getBestConfiguration(configs);
         System.out.println(config);

javax.media.j3d.JoglGraphicsConfiguration

JoglPipeline

上述类,仅在getBestConfiguration()新建


Renderer(继承自J3dThread)

doWork()调用。


崩溃原因:

JoglPipeline.getBestConfiguration(),大约8730处开始:


       

Frame f = new Frame(device.getDefaultConfiguration());
            f.setUndecorated(true);
            f.setLayout(new BorderLayout());
            capturer = new CapabilitiesCapturer();
            try {
                awtConfig = createAwtGraphicsConfiguration(caps, capturer, screen);
                QueryCanvas canvas = new QueryCanvas(awtConfig, capturer);
                f.add(canvas, BorderLayout.CENTER);
                f.setSize(MIN_FRAME_SIZE, MIN_FRAME_SIZE);
                f.setVisible(true);

在setVisible()的时候,嗝屁了。


JoglPipeline$QueryCanvas.addNotify()

glDrawable.setRealized(true);


GLDrawableImpl.setRealized()

类不同:

正确:jogamp.opengl.x11.glx.X11OnscreenGLXDrawable(两层继承:X11GLXDrawable, GLDrawableImpl) implements GLDrawable


错误:jogamp.opengl.egl.EGLDrawable(继承GLDrawableImpl)


到了这里,直接原因清楚了。之后就是研究,为什么glDrawable不同。

目录
相关文章
|
2月前
|
人工智能 Cloud Native 安全
Agentic Cloud 架构重构:AI桌面管理系统在阿里云原生环境下的规模化落地
本文剖析云原生与Agentic时代下内部威胁新形态,揭示传统桌面管理失效困境;提出AI驱动的智能终端治理方案,依托阿里云Agentic Cloud全栈能力(Agentic OS、ACK、FC、百炼模型),实现秒级风险识别、自然语言审计与Agent自治闭环,兼顾安全合规与降本增效。(239字)
|
3月前
|
缓存 人工智能 数据可视化
GLM 5.2自托管完整实操指南:硬件选型、vLLM/SGLang部署与成本测算全解
GLM 5.2作为国产标杆级开源大模型,采用753B MoE混合专家架构,单次推理仅激活8个专家模块,原生支持百万Token超长上下文,在代码生成、复杂数学推理、长篇文档分析等场景综合能力突出。企业选择GLM 5.2本地/私有云自托管,核心收益在于数据完全不出域、模型可深度定制、长期算力成本可控,但落地需要解决硬件匹配、推理框架适配、性能调优、成本核算四大核心难题。同时,搭配OpenClaw、Hermes两类主流AI智能体,可搭建完整本地自动化工作流,结合阿里云百炼Token Plan云端订阅方案,形成本地私有化+云端弹性混合使用架构。本文完整覆盖GLM 5.2硬件分级方案、两大主流推理框架部
781 1
|
4月前
|
缓存 人工智能 NoSQL
大模型调用太贵?阿里云Tair语义缓存公测:命中即省
大模型成本黑洞在Output Token!阿里云Tair AI Gateway推出语义缓存,通过向量检索识别语义重复请求,跳过LLM推理,实测命中率近60%、准确率F1达0.89,毫秒级响应。兼容OpenAI/Redis API,4步接入,公测期全免费。
|
缓存 NoSQL 前端开发
如何开发工程项目部管理系统中的物资管理板块(附架构图+流程图+代码参考)
工程项目部物资管理需构建“申请→审批→采购→入库→领用→盘点→预警”闭环流程,实现库存可视、差异可控、现场高效。本文详解落地思路、架构设计、关键表结构、业务流程及开发技巧,并提供核心代码示例与FAQ,助力企业实现数据驱动的物资管理体系。
|
6月前
|
人工智能 小程序 前端开发
从0到1搭建AI真人数字人小程序:源码方案与落地流程详解
本文从实际开发角度出发,系统解析了AI真人数字人小程序的核心架构、源码选型与落地流程。围绕数字人驱动、AI对话能力及小程序交互三大模块,详细拆解从0到1的搭建路径,并结合实际项目经验分享关键优化点与商业化思路。适合软件开发者、创业团队及企业数字化转型参考,帮助快速实现AI数字人项目落地与变现。
|
7月前
|
存储 人工智能 安全
OpenClaw(Clawdbot)从中级到高级进阶指南:部署+记忆系统+多Agent协作实操及避坑手册
OpenClaw(原Clawdbot)作为开源AI Agent框架,其核心价值在于可扩展性与深度定制能力。多数用户完成基础部署后,仅能使用基础对话与简单技能调用功能,难以发挥其全部潜力——中级到高级的进阶,本质是从“会用”到“活用”的跨越,核心突破点在于**记忆系统优化、多Agent协作、自定义Skill开发、自动化工作流搭建**四大模块。
1775 1
|
数据采集 大数据 BI
终于有人把指标管理平台讲明白了!
企业常因数据口径不一、重复开发、效率低下等问题陷入“数据扯皮”。搭建指标管理平台可统一标准,提升数据质量与协作效率。通过FineBI等工具,实现数据连接、指标管理、分析应用三层架构,推动数据驱动决策,助力企业降本增效,真正实现数据资产化。
终于有人把指标管理平台讲明白了!
|
敏捷开发 算法 测试技术
软考中级软件设计师专项-软件工程专题上篇
本篇章精讲软考中级软件设计师“软件工程”核心内容,涵盖CMM/CMMI成熟度模型、瀑布/螺旋/敏捷等开发模型、系统测试与维护策略及McCabe复杂度等考点,结合例题解析,助力构建全生命周期知识体系,精准突破考试重难点。
758 1
软考中级软件设计师专项-软件工程专题上篇
|
缓存 前端开发 NoSQL
如何开发工程项目部管理系统中的进度管理板块(附架构图+流程图+代码参考)
本文介绍如何构建一个高效的工程项目进度管理板块,涵盖系统架构、数据模型、核心功能、业务流程及开发技巧。内容包含四个关键代码示例,便于快速落地开发,帮助解决进度不准与沟通不畅两大工程难题。
|
缓存 物联网 异构计算
智谱发布新一代旗舰模型 GLM-4.5,面向推理、代码与智能体的开源SOTA模型!
7月28日晚,智谱带来新一代旗舰模型——GLM-4.5!GLM-4.5 系列模型是专为智能体设计的基础模型。GLM-4.5拥有 3550 亿总参数量,其中 320 亿活跃参数;GLM-4.5-Air 采用更紧凑的设计,拥有 1060 亿总参数量,其中 120 亿活跃参数。GLM-4.5模型统一了推理、编码和智能体能力,以满足智能体应用的复杂需求。
1806 0