我有一个相对简单(没有类)的python 2.7程序.该程序的第一件事是将sqlite dbase读入字典.数据库很大,但不是很大,在磁盘上大约90Meg.读入大约需要20秒.在数据库中读取后,我会初始化一些变量,例如
localMax = 0
localMin = 0
firstTime = True
Run Code Online (Sandbox Code Playgroud)
当我在Eclipse-3.7.0/pydev中调试这个程序时 - 即使是这些简单的行 - 调试器中的每个步骤都会占用100%的核心,并且需要5到10秒.我可以看到python进程达到100%cpu 10秒.单步......等待10秒......单步......等待10秒......如果我只是在命令行调试,只使用pdb,没问题.如果我根本不调试,程序以"正常"速度运行,没有像Eclipse那样奇怪.
我已经在具有4G内存的双核Win7 PC,8核Ubuntu内存,8G内存,甚至是我的Mac Air上再现了这一点.对于多平台开发来说,这是怎么回事!我一直认为它会在某个地方发挥作用.我永远都不会接近内存不足.
在每个Eclipse的单步操作中,为什么python进程会跳转到100%的CPU,需要10秒?
] 1
我前几天安装了Eclipse CDT,当我重新启动Eclipse时,我的工具栏被更新,以显示工具栏左上角的几个新的(但无用的)按钮.我查看了我的工具栏自定义以尝试删除按钮(更大的构建按钮,启动按钮,停止按钮和下拉菜单)但我似乎无法在那里找到它.它是插件吗?如果是,我该如何删除它?
我在我的RCP应用程序中使用星云网格小部件.我已经向我的Grid添加了一个controlListener,它会在调整Grid Control时调整每个Grid行高.代码段如下:
@Override
public void controlResized(ControlEvent e) {
GridColumn []cols = grid.getColumns();
for (GridItem item : grid.getItems()) {
GC gc = new GC(item.getDisplay());
int max = 0;
Point tb=null;
for(GridColumn col : cols){
tb = col.getCellRenderer().computeSize(gc, col.getWidth(), SWT.DEFAULT, item);
max = Math.max(max, tb.y);
if(max > hmax){
break;
}
}
if(hmax==-1){
}else if(max > hmax){
max=hmax;
}
gc.dispose();
item.setHeight(max);
}
}
Run Code Online (Sandbox Code Playgroud)
这样工作正常,即,每次用户调整任何列的大小时都会调整高度.但是每当网格行的数量巨大而不是数百到数千时,调整大小就不顺利.用户界面几秒钟内没有响应.在进行一些分析时,我可以缩小负责此延迟的声明.这是以下声明:
tb = col.getCellRenderer().computeSize(gc, col.getWidth(), SWT.DEFAULT, item);
Run Code Online (Sandbox Code Playgroud)
我能理解这个的原因.为每一行和一列调用上面的语句,这似乎是原因.对于2000行和5列的网格,此语句被调用10000次.我怎样才能使这个过程具有高效性?
可以Eclipse的车被用于传统的单片式应用程序的开发?一个不使用Docker的应用程序.如果可能,从桌面Eclipse迁移到Eclipse Che是一个很好的决定吗?Che是否提供各种插件?
这是一个新问题.我复制粘贴程序并尝试在eclipse中运行它.但日食不断运行一个较旧的程序.我不知道发生了什么事.(我保存程序是因为互联网上有人建议)在运行按钮中,只有旧程序.所以我进入运行配置选项并双击java应用程序选项,不知怎的,我现在正在处理的那个选项出现了.我能够编译并运行当前的那个.所以从技术上讲我解决了这个问题,但我想解释一下,发生了什么?
虽然我试图用我的函数返回值进行类型转换,但我在Java中遇到了编译错误
public short subtractNumbers (short a, byte b, float k )
{
short result=short(a+b-k);
return result;
}
Run Code Online (Sandbox Code Playgroud)
对于上面编写的代码片段,我从编译器获取错误语句,如下所示:
error: '.class' expected
short result=short(a+b-k);
^
error: not a statement
short result=short(a+b-k);
^
error: ';' expected
short result=short(a+b-k);
^
Run Code Online (Sandbox Code Playgroud)
这可能是什么问题,错误陈述背后的逻辑是什么?在此先感谢您的帮助,我将非常感激.
eclipse ×4
eclipse-cdt ×1
eclipse-che ×1
eclipse-rcp ×1
ide ×1
java ×1
jface ×1
nebula ×1
performance ×1
pydev ×1
python ×1
swt ×1
usability ×1
web ×1