我需要运行一个使用超过2GB的Java内存密集型应用程序,但是我遇到了增加堆最大大小的问题.到目前为止,我尝试了以下方法:
设置-Xmx参数,例如-Xmx3000m.这种方法在创建JVM时失败.从我用Google搜索,看起来-Xmx必须小于2GB.
使用-XX:+ AggressiveHeap选项.当我尝试这种方法时,我得到一个"内存不足"错误,告诉堆大小为1273.4 MB,即使我的计算机有8GB内存.
是否有另一种方法可以尝试增加JVM的最大堆大小?以下是计算机规格的摘要:
Run Code Online (Sandbox Code Playgroud)java version "1.6.0_18" Java(TM) SE Runtime Environment (build 1.6.0_18-b07) Java HotSpot(TM) Client VM (build 16.0-b13, mixed mode, sharing)
我正在对第三方类进行覆盖,我想要取消对它的所有检查(因为我只保留它直到接受补丁).
有没有办法抑制文件的所有检查?
我尝试使用"*",但失败了.
我需要模拟一个测试场景,我在其中调用getBytes()
String对象的方法,并得到UnsupportedEncodingException.
我试图使用以下代码实现:
String nonEncodedString = mock(String.class);
when(nonEncodedString.getBytes(anyString())).thenThrow(new UnsupportedEncodingException("Parsing error."));
Run Code Online (Sandbox Code Playgroud)
问题是,当我运行我的测试用例时,我得到一个MockitoException,表示我无法模拟java.lang.String类.
有没有办法使用mockito模拟String对象,或者,当我调用getBytes方法时,一种方法使我的String对象抛出UnsupportedEncodingException?
以下是更多细节来说明问题:
这是我要测试的类:
public final class A {
public static String f(String str){
try {
return new String(str.getBytes("UTF-8"));
} catch (UnsupportedEncodingException e) {
// This is the catch block that I want to exercise.
...
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的测试类(我使用的是JUnit 4和mockito):
public class TestA {
@Test(expected=UnsupportedEncodingException.class)
public void test(){
String aString = mock(String.class);
when(nonEncodedString.getBytes(anyString())).thenThrow(new UnsupportedEncodingException("Parsing error."));
A.f(aString);
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个原始图像,其中每个像素对应一个16位无符号整数.我试图使用PIL Image.fromstring()函数读取,如下面的代码:
if __name__ == "__main__":
if (len(sys.argv) != 4):
print 'Error: missing input argument'
sys.exit()
file = open(sys.argv[1], 'rb')
rawData = file.read()
file.close()
imgSize = (int(sys.argv[2]), int(sys.argv[3]))
# Use the PIL raw decoder to read the data.
# - the 'F;16' informs the raw decoder that we are reading a little endian, unsigned integer 16 bit data.
img = Image.fromstring('L', imgSize, rawData, 'raw', 'F;16')
im.save('out.png')
Run Code Online (Sandbox Code Playgroud)
PIL文档通知fromstring()函数的第一个参数是'mode'.然而,看文档和谷歌搜索,我无法找到有关该论点真正意义的细节(我相信它与色彩空间或类似的东西有关).有谁知道我在哪里可以找到关于fromstring()函数的更详细的参考以及mode参数的含义?
我正在使用javax.servlet.http.HttpServletRequest来实现Web应用程序.
使用getParameter方法获取请求的参数没有问题.但是我不知道如何在我的请求中设置参数.
最近,我曾在一个项目中使用过TDD(测试驱动开发).该项目是一个用Java开发的Web应用程序,虽然单元测试Web应用程序可能并不简单,但可以使用模拟(我们使用了Mockito框架).
现在我将开始一个项目,我将使用C++处理图像处理(主要是图像分割),我不确定使用TDD是否是一个好主意.问题是很难判断分割的结果是否正确,同样的问题也适用于许多其他图像处理算法.
所以,我想知道的是,如果有人在这里成功使用TDD和图像分割算法(不一定是分割算法).
我有下面的命令来计算遵循该模式的所有目录20??????
:
'dir /b "20??????" | find /c "2"'
Run Code Online (Sandbox Code Playgroud)
例如,如果我有以下目录,该命令将返回6:
20090901
20090902
20090903
20090904
20090905
20090906
Run Code Online (Sandbox Code Playgroud)
如何在变量中存储此命令的结果(前面提到的示例中的6)?
这是问题所在:我有许多由不同厚度的痕迹组成的二进制图像.下面有两张图片来说明问题:
我需要的是测量图像中痕迹的平均厚度(以像素为单位).实际上,图像中痕迹的平均厚度是一种有点主观的度量.所以,我需要的是一个与轨迹半径有一定关系的度量,如下图所示:
由于该措施不需要非常精确,我愿意以精确度换取速度.换句话说,速度是解决这个问题的重要因素.
痕迹中可能存在交叉点.
迹线厚度可能不是恒定的,但平均测量值是可以的(即使最大迹线厚度是可接受的).
跟踪总是比它宽得多.
language-agnostic algorithm image image-processing computer-vision
我必须为测试场景编写一个bat脚本,由于磁盘已满,我们测试的软件无法写入文件.测试脚本必须是自动化的,以便我们可以在夜间测试中运行它.测试脚本也必须在不同的计算机上运行,因此在这种情况下安装像虚拟机这样的软件不是最好的解决方案.
如何在Windows环境中模拟该错误?
我正在编写一个ksh脚本,我必须在一个单独的命令提示符窗口中运行一个可执行文件.
java ×4
batch-file ×2
image ×2
unit-testing ×2
windows ×2
algorithm ×1
c++ ×1
checkstyle ×1
jvm ×1
linux ×1
mocking ×1
mockito ×1
python ×1
scripting ×1
testing ×1