问题列表 - 第31076页

使BufferedImage使用更少的RAM?

我有java程序从硬盘驱动器读取jpeg文件,并将其用作各种其他东西的背景图像.图像本身存储在一个BufferImage对象中,如下所示:

BufferedImage background
background = ImageIO.read(file)
Run Code Online (Sandbox Code Playgroud)

这很有效 - 问题在于BufferedImage对象本身是巨大的.例如,一个215k的jpeg文件成为一个BufferedImag4兆的e对象并进行更改.有问题的应用程序可以加载一些相当大的背景图像,但是jpegs永远不会超过一两或两个,用于存储的内存BufferedImage可以快速超过100兆字节.

我假设这一切都是因为图像作为原始RGB数据存储在ram中,而不是以任何方式压缩或优化.

有没有办法让它以更小的格式将图像存储在ram中?我处在CPU方面比RAM更松弛的情况下,因此将图像对象的大小向下移向jpeg压缩的轻微性能损失将非常值得.

java memory image awt

14
推荐指数
2
解决办法
8957
查看次数

重新分配数组(C99)

该标准指定如果新大小更大,则重新分配空间的内容是不确定的.

如果保留先前分配的空间的内容很重要,那么重新分配数据的最佳方法如下:将其复制到堆栈,从堆中释放它,在堆上分配更多空间,然后复制回堆?还有另一种安全的方法吗?

实现数据结构的最佳方法是像动态增长的数组一样只能以链表的形式增长吗?

c memory-management c99

2
推荐指数
1
解决办法
882
查看次数

教条记录听众

我有一个包含preSave()方法的监听器.如果条件失败,有没有办法让我停止调用save方法的学说.不幸的是我不允许抛出异常.还有其他方法吗?

php doctrine zend-framework record listener

1
推荐指数
1
解决办法
805
查看次数

为经验丰富的git用户学习svn?

对于像我这样的人来说,我正在寻找"不仅仅是一个介绍",因为他对git最熟悉,并且通过颠覆能力,并希望学习更高级的颠覆使用.最好比阅读Practical Subversion更"快".

svn git

6
推荐指数
1
解决办法
505
查看次数

Spring classpath前缀差异

记录在这里它说

此特殊前缀指定必须获取与给定名称匹配的所有类路径资源(内部,这通常通过ClassLoader.getResources(...)调用),然后合并以形成最终的应用程序上下文定义.

有人可以解释一下吗?

使用classpath*:conf/appContext.xml而不是classpath:conf/appContext.xml没有星号有什么区别.

java spring classpath

137
推荐指数
3
解决办法
6万
查看次数

为什么我不能在Windows服务中使用UI组件(Windows窗体)?

我看过几篇帖子,主要说明UI组件不应该作为服务运行.我理解没有人可以响应UI事件等的理性但事实仍然是许多自动化任务只有Windows窗体才有可能.

这里有几个很好的例子:

  1. 我想构建一个url爬虫服务,它可以制作网页的缩略图.目前,我认为实现这一目标的唯一方法是尝试自动化.Net WebBroswer组件.

  2. 自动打印MS-Word文档.

在Vista之前有一些技巧来解决这个问题,但现在没有.我的问题是为什么会出现这种情况,还有什么替代方案呢?

automation windows-services winforms

1
推荐指数
1
解决办法
131
查看次数

如何更改Netbeans中使用的行结尾

Netbeans在线结尾有这个wiki条目:http://wiki.netbeans.org/FaqEditorEOLs

但它并不是很有用.它只是说你不应该在不同的操作系统上开发,那就是......

然而,在我的情况下,我没有权力.我在Windows机器上,我正在处理的PHP应用程序需要以UNIX EOL结束.

似乎没有为新文件设置此选项的选项.谁能告诉我在哪里设置这个?

netbeans eol

22
推荐指数
3
解决办法
2万
查看次数

为什么SQL Server Management Studio 2008命令行开关停止工作?

我一直非常依赖于SSMS的Windows快捷方式,其中包括命令行开关,允许我快速打开特定服务器上的特定数据库.例如

Ssms.exe -S 123.123.123.123 -U sa -P goodpassword -d DbName
Run Code Online (Sandbox Code Playgroud)

要么

Ssms.exe -S . -E -d DbName
Run Code Online (Sandbox Code Playgroud)

这突然停止了工作.我从SSMS得到这个错误:

Failed to create new SQL Server script.
Object reference not set to an instance of an object. (AppIDPackage)
Program Location: at Microsoft.SqlServer.Management.UI.VSIntegration.
AppIDPackage.AppIDPackage.OpenConnectionDialogWithGlobalConnectionInfo()
Run Code Online (Sandbox Code Playgroud)

我仍然可以在没有命令行开关的情况下启动SSMS,然后手动建立连接.例如,某些命令行开关仍然有效

ssms.exe -nosplash
Run Code Online (Sandbox Code Playgroud)

工作良好.

我使用-S,-E和-d命令行开关的任意组合得到相同的错误.如果我指向有效的服务器或数据库或者没有,或者如果我的登录凭据是好还是不好不要紧.我可以指向旧版本的SSMS,它工作正常,但不是2008版本.

MSDN论坛上的这篇文章是我在网上找到的,但是MS在这个帖子上并没有很大帮助.

我有什么想法可以开始解决这个问题吗?我在不同的服务器上使用很多不同的数据库,我真的依赖这些快捷方式.

command-line ssms sql-server-2008

10
推荐指数
1
解决办法
1万
查看次数

有没有办法在Notepad ++中向左或向右移动突出显示的行

在Eclipse IDE(和许多其他我会想象)有一个简单的快捷键转移高亮行向右或由一个片长留.

我已经完成了所有TextFX的在记事本中显得++,只发现高亮显示的行向上或向下移动的能力.是否有内置的方法可以向左或向右移动突出显示的线条?

谢谢阅读

notepad++

27
推荐指数
2
解决办法
4万
查看次数

HTTP 406和415错误代码

我正在编写一个只接受json的Web服务,并且只输出json.

因此,如果请求任何其他格式,我需要返回适当的状态代码.

看来我有两个选择:

  1. 406 - 不可接受
  2. 415 - 不支持的媒体类型

如果有人能够启发我关于两个代码的语义,那将是很棒的.

web-services http http-headers

64
推荐指数
4
解决办法
4万
查看次数