求教高人,Java Swing是否可以应用于高可靠性要求的工业领域?
各位大侠好,我现在闲在家里,想做几个控制软件&平台的demo,准备去澳洲找工作的时候秀一下,软件的GUI准备用Swing来写。现在有个问题想请教大家,因为考虑到应用于工业现场,软件可靠性会变得非常重要,除了努力剔除bug外,我还想知道,Swing的可靠性是否足够用于工业领域,因为Swing有一个线程安全的问题,随时需要CPU重绘,万一什么时候CPU jam了一下,或者写程序的时候不小心,没有对Swing控件开新线程,又或者一个开启Swing的子程序同时处理其他事情太久,Swing控件来不及重绘,都会导致GUI死掉,而且后面这两种原因很可能查到吐血都查不出来的:Q 。不过听说Oracle里面很多的应用都是Java写的,不知道他的界面是Swing写的吗?如果Oracle都用Swing写的,那应该可靠性不是问题了。
OK,请各位大侠指点一下。:) 咋没人回呢?
难不成因为俺的RP?:funk: LZ应该把头像换换,就有人回了~~~比如;半露酥肩的MM;P
回复 #3 formatc 的帖子
半露酥肩的MM没有的,全露的有很多:lol ??很多wms的界面就是swing做的,某些银行系统也是吧
回复 #5 lufumin1832 的帖子
哦,那Swing应该挺靠得住的,其实用Swing做东西还有一个巨大好处,就是可以移植到Cent OS和Solaris上,这两东西可比Microshit的产品稳定太多了 原帖由 dark008 于 9-7-2010 15:25 发表 http://freeoz.org/ibbs/images/common/back.gif哦,那Swing应该挺靠得住的,其实用Swing做东西还有一个巨大好处,就是可以移植到Cent OS和Solaris上,这两东西可比Microshit的产品稳定太多了
Swing在Linux上我碰到过非常特殊的问题,后来发现是Java在Linux上的bug
不需要应用服务器的话,Windows是最好的Java平台
回复 #7 yuba 的帖子
Windows如果做试验的平台到没什么问题,关键要做工业平台,几年不关机的话,我对Microshit的东西实在没什么信心。 Why Swing?why not SWT?
回复 #9 sliuhao 的帖子
SWT好像也行哦,而且不像Swing这样需要不断重绘界面。但是关键问题是,我没写过SWT:L ,哈哈
现在用的IDE都还是Netbeans
回复 #10 dark008 的帖子
for my understanding, SWT is better than Swing in Java GUI....especial in real time control...because it is directly native call rather than the layering stuff...
回复 #11 sliuhao 的帖子
好的,接下来试一下SWT,哈哈哈,不过我还要先看书哦,我连Eclipse现在都用得不利索:L ,哈哈OK,多谢高人指点。:lol 原帖由 dark008 于 9-7-2010 21:20 发表 http://freeoz.org/ibbs/images/common/back.gif
Windows如果做试验的平台到没什么问题,关键要做工业平台,几年不关机的话,我对Microshit的东西实在没什么信心。
GTK或QT这样原生的Linux GUI 似乎更适合工业应用 什么是工业应用?
原帖由 yuba 于 10-7-2010 12:16 发表 http://www.freeoz.org/ibbs/images/common/back.gif
GTK或QT这样原生的Linux GUI 似乎更适合工业应用
回复 #14 key 的帖子
连续几年的全开机正常运行 原帖由 yuba 于 10-7-2010 12:16 发表 http://www.freeoz.org/ibbs/images/common/back.gifGTK或QT这样原生的Linux GUI 似乎更适合工业应用
QT是C++的,我不会,GTK好像是写C的,我不会写Windows下的C也,它的函数库有些什么也不知道(除了printf还有什么吗?:o )。我只会写硬件上的C。 连续几年全开机正常运行,需要的是一个稳定的内核和稳固的硬件。
讨论GUI没有太大的意义吧?
试想一下,你是依靠GUI来采集数据吗?如果GUI上出现线程更新问题,数据采集就中止了,
这样的软件架构你敢拿出来工业应用?如果GUI只是一个人机界面,需要时做出合适的显示,
那就没什么了。大不了上面有一个refresh button,就可以解决所有问题。
原帖由 dark008 于 10-7-2010 14:26 发表 http://www.freeoz.org/ibbs/images/common/back.gif
连续几年的全开机正常运行
回复 #17 key 的帖子
有道理,果然是高人:good我原计划操作系统可能用Linux和Solaris之类的,机器用工控机,这样应该靠得住了。
GUI就与控制处理模块分开写,有问题的话就手动刷新吧。
其实目前只是做个Demo玩玩,现在都闲在家里呢,工作都没有,别谈什么工业应用了:'( 。
说不定去澳洲找到工作了,要写的控制程序也只是搭建实验平台,死机无所谓,只要最后缓过来能做测试就行。这时候也许就用Labview简简单单弄几个小时就搞定了。 可以看一下, eclipse RCP.
提供基本工作台功能的核心,包括对可移动以及可叠加的窗口组件(编辑器和视图)、菜单、工具栏、按钮、表格、树形结构等等的支持.
可以省了你很多基础开发的工作, 直接写你的业务就好的。
做为一个平台, 插件功有很大的扩展行
回复 #19 oea 的帖子
我刚才搜索了一下,好像eclipse RCP可以生成很酷的界面,还有很漂亮的仪表盘。:lol不过我一般用Jfreechart来做类似的事情的。不知道eclipse RCP会不会更方便一些? 原帖由 dark008 于 11-7-2010 14:36 发表 http://freeoz.org/ibbs/images/common/back.gif
有道理,果然是高人:good
我原计划操作系统可能用Linux和Solaris之类的,机器用工控机,这样应该靠得住了。
GUI就与控制处理模块分开写,有问题的话就手动刷新吧。
其实目前只是做个Demo玩玩,现在都闲在家 ...
Associate LabVIEW Developer Certificate飘过。。。 原帖由 clarkli 于 15-7-2010 19:48 发表 http://www.freeoz.org/ibbs/images/common/back.gif
Associate LabVIEW Developer Certificate飘过。。。
突然想到一个问题,正巧高人路过,请教一下:
我一开始用Labview的时候,就记得在一个什么文档里面,NI有一个重要说明,说的是:Labview不适用于生命支持系统,工业控制系统,航天领域。说白了就是他的可靠性达不到。想问一下,是这样的吗?
我自己就碰到过类似问题,记得有一次写和DAQ仪器的通信程序,逻辑完全没错的程序每次都在串口通信模块出错,但是用过的人都知道的,Labview只会告诉你那个模块错了,至于如何错,怎么解决是不知道的,底层的源代码更不可能看得到。
之后是痛苦的无头绪的Debug半天,在快要吐血之际,上网搜搜看有没有类似的问题和答案吧。
终于在NI的官方论坛,一个Israel的家伙和我碰到类似的问题,在最下角终于看到NI的人出来说话了,说了好多问题的可能成因,最后给出一个possible solution,试过之后还真的好了,即使这个solution有点扯,里面的很多参数设置也是完全凭感觉。
不过这次之后,我对Labview不那么崇拜了,也许在快速构建试验平台上面,目前还无人能敌,但是谈到可靠运行的话,一个基于possible,maybe,I guess,In my experience的软件是很靠不住的。 LABVIEW的串口模块是有问题,很垃圾。
页:
[1]