`

Ogre4J 使用中错误总结

阅读更多

1、EXCEPTION_ACCESS_VIOLATION

#
# An unexpected error has been detected by Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x69f4b686, pid=400, tid=5828
#
# Java VM: Java HotSpot(TM) Client VM (11.3-b02 mixed mode windows-x86)
# Problematic frame:
# C  [atioglxx.dll+0xf1b686]
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

 

这是指你去碰了不该碰的东西,越界了,也就是说在一个非UI线程去操作了UI线程。因为,SWT 在底层设计时不允许其他的线程访问 UI 线程,这样你就犯错了,所以在使用UI线程时要加上一句

swtShell.getDisplay().asyncExec(new Runnable() { 
	public void run() {
		updateAssets((Map<String, MonitorObject>) peoples);						
	}
});

 

2、java.util.ConcurrentModificationException

工作中碰到个ConcurrentModificationException。代码如下:
List list = ...;
for(Iterator iter = list.iterator(); iter.hasNext();) {
    Object obj = iter.next();
    ...
    if(***) {
        list.remove(obj);
    }
}
在执行了remove方法之后,再去执行循环,iter.next()的时候,报java.util.ConcurrentModificationException(当然,如果remove的是最后一条,就不会再去执行next()操作了)

总而言之,是你的list在你循环的时候,被你修改了,所以才报错。

 

 

1
3
分享到:
评论

相关推荐

    Ogre图形引擎中的技巧总结

    Ogre是一款强大的开源3D图形引擎,广泛应用于游戏开发、模拟和...以上技巧旨在提高Ogre图形引擎的使用效率和灵活性,它们在实际项目中具有很高的实用价值。理解并熟练运用这些技巧,可以使你的开发工作更加得心应手。

    OGRE用户使用指南

    《OGRE用户使用指南》是一本面向初学者的详尽教程,主要介绍如何操作和利用OGRE(Object-Oriented Graphics Rendering Engine)这一强大的3D图形渲染引擎。该指南适用于那些希望进入3D游戏开发或者虚拟现实应用领域...

    ogre4j-开源

    在Ogre4j 1.6.2-beta6这个版本中,源代码的提供对于开发者来说是一大福音。源代码可以让你深入理解Ogre4j如何封装和调用OGRE库,这对于学习、调试和定制功能非常有帮助。你可以查看具体的类和方法,了解它们如何映射...

    Ogre中使用CEGUI

    以下是如何在Ogre中使用CEGUI的一些关键知识点: 1. **初始化CEGUI**: 在开始创建GUI之前,你需要先初始化CEGUI系统。这通常涉及设置资源路径、加载基本的皮肤和字体。例如,你可以使用`CEGUI::System::create()`...

    ogre中文教程 ogre中文教程

    接着,你会学习到Ogre 3D中的场景管理,包括如何组织场景中的对象,使用SceneNode和Entity来创建复杂的3D结构。此外,还会讲解相机控制,让你的角色或视角能在3D世界中自由移动。 在模型和动画方面,教程会介绍导入...

    在OGRE中使用HLSL.txt

    ### 在OGRE中使用HLSL #### 一、OGRE与HLSL简介 OGRE(Object-Oriented Graphics Rendering Engine)是一款免费且开源的3D渲染引擎,旨在为开发者提供高性能、高质量的3D图形渲染解决方案。HLSL(High-Level ...

    ogre4d ogre4delphi ogrefordelphi

    真实名字叫Ogre4D(意思为OgreForDelphi 并不是4D版OGRE)国内找 到国外找各种找,终于让我找到了,但我花了5元钱从花钱下载的代码站上找到下载的,现在20积分提供下载 里面有5个例子 这是文件列表 CEGUIBase.dll ...

    ogre的安装说明自我总结

    ### OGRE的安装说明自我总结 #### 一、前言 OGRE(Object-oriented Graphics Rendering Engine)是一款开源的三维图形渲染引擎,它提供了一系列高级功能,如场景管理、动画支持等,非常适合游戏开发和其他需要高...

    ogre 嵌入到MFC中

    可以通过定义`OGRE_DEBUG_MEMORY_MANAGER`来启用Ogre的内存管理机制,并且在编译选项中使用`_DEBUG`宏。 2. **MFC配置**:如果使用MFC,需要在项目的属性配置中进行适当的设置: - 在“常规”选项卡中,将“使用...

    OGRE入门总结与心得

    本文主要探讨了OGRE的入门知识,包括配置、资源管理和CG程序的使用。 首先,配置OGRE时,工作路径的选择至关重要。为了在Debug模式下运行项目,你需要确保将OGRE的相关DLL文件和Cfg文件复制到Debug目录下。比如,...

    _Ogre3D.rar_Ogre_ Ogre_ogre_ogre3d 教程

    2. **基本概念**:介绍3D图形的基本概念,如顶点、多边形、纹理坐标、法线等,以及Ogre3D中的核心组件,如场景管理、相机、光照、材质等。 3. **场景管理**:Ogre3D使用场景节点和层次结构来组织3D对象,教程会解释...

    Ogre3d 之使用 Android NativeActivity

    昨天把Ogre3d 编译到Android 平台安装之后,再回头看代码才发现,在Android工程中居然没有Java源文件,从Manifest文件中才知道原来使用的是 NativeActivity 。这一下让我犯糊涂,没有Java文件,没有Activity,那我要...

    CEGUI+Ogre完全使用手册.doc

    《CEGUI+Ogre完全使用手册》文档主要涵盖了在游戏开发或图形用户界面设计中如何集成和使用CEGUI(Crystal Space Entity GUI)库与Ogre 3D渲染引擎的详细步骤。CEGUI是一个灵活且可扩展的2D图形用户界面系统,而Ogre...

    ogre中的材质脚本_ogre中的材质脚本_Ogre_

    Ogre将不同的对象分到不同的渲染队列中,以确保透明物体、深度复杂度高的物体等按正确的顺序进行渲染,避免遮挡和渲染错误。 4. **技术(Technique)**:在材质脚本中,技术是实现特定渲染效果的方法。同一材质可能...

    ogre 使用的定时器

    本文将详细讲解如何在Ogre中使用自定义的定时器,以及提供的压缩包文件所包含的内容。 首先,让我们了解定时器在Ogre中的作用。定时器是用于跟踪和管理时间流逝的关键组件,特别是在游戏和实时可视化应用中,它们常...

    ogre引擎分析中文资料汇总

    2. **Ogre架构分析**:资料中可能包括对Ogre引擎核心组件的解析,例如场景管理器、渲染系统、资源管理系统、插件架构等。场景管理器负责组织和渲染3D对象,渲染系统处理图形绘制,资源管理系统管理模型、纹理、材质...

    OGRE基础教程(中文)(1-9)

    通过阅读和理解每个章节,配合实际操作,你将能够逐步建立起对OGRE的全面认识,并具备使用OGRE开发3D应用的能力。 总的来说,“OGRE基础教程(中文)(1-9)”是一套全面的学习资源,适合想要踏入3D图形编程领域的...

    最新OGRE中文帮助文档.chm

    下面将详细阐述OGRE 3D引擎及其相关开发中的关键知识点。 1. OGRE简介: OGRE,全称为Object-Oriented Graphics Rendering Engine(面向对象图形渲染引擎),是一个开源的3D渲染库,由C++编写。它为游戏开发、模拟...

Global site tag (gtag.js) - Google Analytics