问题列表 - 第15315页

无需使用任何电源功能即可返回2的功率

我想要一个带有int xas参数并返回的程序2^x.实施不允许使用的权力.

public int double2 (int x) {
    int r = 2;
    int y = 1;
    for (int i=0; i < x; i++){    
        y = r* y;
    }
    return y;
}
Run Code Online (Sandbox Code Playgroud)

你认为这是一个正确的解决方案吗?

java

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

为什么即使堆等大小稳定,Sun JVM也会继续消耗更多的RSS内存?

在过去的一年里,我在应用程序的Java堆使用方面做了很大的改进 - 减少了66%.为此,我一直在通过SNMP监控各种指标,例如Java堆大小,cpu,Java非堆等.

最近,我一直在监视JVM有多少实内存(RSS,驻留集)并且有点惊讶.JVM消耗的实际内存似乎完全独立于我的应用程序堆大小,非堆,eden空间,线程数等.

堆栈大小由Java SNMP Java堆使用图表测量http://lanai.dietpizza.ch/images/jvm-heap-used.png

以KB为单位的实内存.(例如:1 MB KB = 1 GB) Java堆使用图http://lanai.dietpizza.ch/images/jvm-rss.png

(堆图中的三个凹陷对应于应用程序更新/重新启动.)

这对我来说是一个问题,因为JVM正在消耗的所有额外内存都是"窃取"内存,可供操作系统用于文件缓存.实际上,一旦RSS值达到~2.5-3GB,我开始看到响应时间变慢,应用程序的CPU利用率更高,主要是IO等待.正如某些点对交换分区的分页启动.这都是非常不受欢迎的.

所以,我的问题:

  • 为什么会这样?什么是"引擎盖下"
  • 我该怎么做才能控制JVM的实际内存消耗?

血腥的细节:

  • RHEL4 64位(Linux - 2.6.9-78.0.5.ELsmp#1 SMP Wed Sep 24 ... 2008 x86_64 ... GNU/Linux)
  • Java 6(build 1.6.0_07-b06)
  • 雄猫6
  • 应用程序(按需HTTP视频流)
    • 通过java.nio FileChannels实现高I/O.
    • 数百到数千个线程
    • 数据库使用率低
    • 春天,Hibernate

相关的JVM参数:

-Xms128m  
-Xmx640m  
-XX:+UseConcMarkSweepGC  
-XX:+AlwaysActAsServerClassMachine  
-XX:+CMSIncrementalMode    

-XX:+PrintGCDetails 
-XX:+PrintGCTimeStamps  
-XX:+PrintGCApplicationStoppedTime  
-XX:+CMSLoopWarn  
-XX:+HeapDumpOnOutOfMemoryError 
Run Code Online (Sandbox Code Playgroud)

我如何衡量RSS:

ps x -o command,rss | grep java | grep latest | cut -b 17-
Run Code Online (Sandbox Code Playgroud)

这将进入一个文本文件,并定期读入我的监控系统的RRD数据库.请注意,ps输出Kilo Bytes.


存在的问题及解决方案小号:

虽然最终是ATorras的答案证明最终是正确的,但是kdgregory …

java memory performance jvm sun

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

Mysql索引配置

我有一张450000排新闻的桌子.表模式是这样的:

CREATE TABLE IF NOT EXISTS `news` (
  `id` int(11) NOT NULL auto_increment,
  `cat_id` int(11) NOT NULL,
  `title` tinytext NOT NULL,
  `content` text NOT NULL,
  `date` int(11) NOT NULL,
  `readcount` int(11) NOT NULL default '0',
  PRIMARY KEY  (`id`),
  KEY `cat_id` (`cat_id`),
  KEY `cat_id_2` (`cat_id`,`id`),
  KEY `cat_id_date` (`cat_id`,`date`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin5 AUTO_INCREMENT=462679 ;
Run Code Online (Sandbox Code Playgroud)

当我运行如下的sql命令为类别页面的页面"x"获取一些新闻时,如果x超过100则需要超过15秒:

select * news where cat_id='4' order by id desc limit 150000,10;
Run Code Online (Sandbox Code Playgroud)

解释说明它使用"where"和索引"cat_id_2"

在写这个问题时,我还检查了一个更简单的SQL查询,这也花了近一分钟:

select * from haberler order by id desc limit 40000,10;
Run Code Online (Sandbox Code Playgroud)

如果sql如下所示,只需几毫秒:

select * …
Run Code Online (Sandbox Code Playgroud)

mysql sql performance

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

连接字符串中的SQL Server Compact"数据目录"宏 - 需要更多信息

因此,如此msdn页面所述,当您为SQL Server Compact 3.5定义连接字符串时,可以使用"数据目录"宏,如下所示:

这个msdn页面引用:

数据目录支持
SQL Server Compact 3.5现在支持Data Directory宏.这意味着如果添加字符串| DataDirectory | (用管道符号括起来)到文件路径,它将解析为数据库的路径.

例如,考虑连接字符串:

"数据源= c:\ program files\MyApp\Mydb.sdf"

使用数据目录时,您可以改为使用以下连接字符串:

"数据源= | DataDirectory |\Mydb.sdf"

有关更多信息,请参见如何:使用应用程序部署SQL Server Compact 3.5数据库.

但是,msdn上的"获取更多信息"链接实际上并没有提供更多信息.

所以我的问题是:

如何|数据目录| 宏在运行时翻译?对于WinForm应用程序,它似乎只是给出可执行文件的位置.还是比这更复杂?

.net sql-server connection-string sql-server-ce datadirectory

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

自动内存分配如何在C++中实际工作?

在C++中,假设没有优化,那么以下两个程序最终会使用相同的内存分配机器代码吗?

int main()
{     
    int i;
    int *p;
}

int main()
{
    int *p = new int;
    delete p;
}
Run Code Online (Sandbox Code Playgroud)

c++ memory memory-management

10
推荐指数
3
解决办法
5981
查看次数

如何制作行业标准桌面Java应用程序?

我知道如何在Swing中创建基本控件,但是进入行业标准应用程序开发,我缺乏执行它们的技能.

我正在设计一个小型Java Swing应用程序.而不是创造的JFrame每一个目的,我想创建控件,它们显示,隐藏它们(在必要时),在短短的一个窗口的一切.

我该怎么做?我是初学者.请指出使用Swing进行桌面Java应用程序的传统方法的不错的Web资源.

java desktop swing

8
推荐指数
2
解决办法
5278
查看次数

获取SortedDictionary中的最后一个元素

我看到了这个问题.

如何在.Net 3.5中获取SortedDictionary中的最后一个元素.

c# collections sorteddictionary

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

为应用程序启用主题

我有一个旧的应用程序(在Win XP中的delphi 7中启动),现在我正在使用delphi 2009(赢得Vista).如果我开始一个新项目,所有按钮都有一个粗糙边缘,但在我的旧应用程序中,所有按钮都有一个"方形"外观.

有没有我错过的设置?谢谢

delphi

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

Windows 7对软件开发人员有什么好处?

我试图将我的开发机器升级到Windows 7 - 我目前在Windows XP 32bit上.

我已经确定了这样一个事实,即通过允许我最大化系统中的RAM量,迁移到64位操作系统应该有助于提高性能.

但Windows 7新增的其他功能对软件开发人员来说是一个福音吗?

windows-7

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

滚动我自己的__repr__

我想为__repr__我定义的某个类编写自己的.我希望它类似于默认值<__main__.O object at 0x00D229D0>,除了在那里有一些其他细节.我该如何重现那个<__main__.O object at 0x00D229D0>东西?

python

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