Tag: 性能

parseInt()和Number()有什么区别?

将string转换为数字时, parseInt()和Number()行为有何不同?

从Type获取新的对象实例

在编译时,人们可能并不总是知道对象的types,但可能需要创build一个types的实例。 你如何从一个types获得一个新的对象实例?

为什么Python代码在函数中运行得更快?

def main(): for i in xrange(10**8): pass main() Python中的这段代码运行在(注意:在Linux的BASH中,时间函数是用时间函数完成的。) real 0m1.841s user 0m1.828s sys 0m0.012s 但是,如果for循环没有放在函数中, for i in xrange(10**8): pass 那么它会运行更长的时间: real 0m4.543s user 0m4.524s sys 0m0.012s 为什么是这样?

.NETexception有多慢?

我不想讨论什么时候可以抛出exception。 我想解决一个简单的问题。 99%的时间没有抛出exception的争论围绕着他们慢,而对方声称(与基准testing),速度不是问题。 我读过许多关于一方或另一方的博客,文章和post。 那是哪个呢? 从答案的一些链接: Skeet , Mariani , Brumme 。

C ++性能与Java / C#

我的理解是C / C ++生成本地代码以在特定的机器体系结构上运行。 相反,像Java和C#这样的语言运行在一个抽象出本地体系结构的虚拟机之上。 从逻辑上讲,由于这个中间步骤,Java或C#似乎不可能匹配C ++的速度,但是我被告知最新的编译器(“热点”)可以达到这个速度甚至超过它。 也许这更像是一个编译问题,而不是一个语言问题,但任何人都可以用简单的英语来解释这些虚拟机语言之一是否可能比本地语言更好地执行?

保持PostgreSQL有时select错误的查询计划

PostgreSQL性能的一个奇怪的问题,查询,使用PostgreSQL的8.4.9。 此查询是在3D卷内select一组点,使用LEFT OUTER JOIN添加相关的ID列,其中存在相关的ID。 x范围的小改动可以使PostgreSQLselect一个不同的查询计划,这个计划的执行时间从0.01秒到50秒。 这是问题的查询: SELECT treenode.id AS id, treenode.parent_id AS parentid, (treenode.location).x AS x, (treenode.location).y AS y, (treenode.location).z AS z, treenode.confidence AS confidence, treenode.user_id AS user_id, treenode.radius AS radius, ((treenode.location).z – 50) AS z_diff, treenode_class_instance.class_instance_id AS skeleton_id FROM treenode LEFT OUTER JOIN (treenode_class_instance INNER JOIN class_instance ON treenode_class_instance.class_instance_id = class_instance.id AND class_instance.class_id = […]

做或不做:将图像存储在数据库中

在一个networking应用程序的背景下,我的老上司总是说在数据库中引用了一个图像,而不是图像本身。 我倾向于同意,在数据库中存储url和图像本身是一个好主意,但是现在我的工作就是在数据库中存储大量的图像。 我能想到的唯一原因可能是更安全吗? 你不希望有人直接链接到一个url? 但是,如果是这样的话,你可以随时让网站/服务器处理图像,如在asp.net中的处理程序,以便用户需要进行身份validation才能查看图像。 我也认为从数据库中提取图像会使性能受到影响。 任何其他原因为什么它可能是一个好/不是很好的主意,将图像存储在数据库中? 准确重复: 用户映像:数据库还是文件系统存储? 精确重复: 在数据库中存储图像:是或不是? 完全重复: 我应该将我的图像存储在数据库或文件夹中吗? 完全重复: 你会将二进制数据存储在数据库还是文件夹中? 确切的重复:将 图片存储为文件或Web应用程序的数据库? 完全重复: 存储less量图像:blob或fs? 精确重复: 将图像存储在文件系统或数据库中?

子查询vs连接

我重构了我们从另一家公司inheritance的应用程序的一个缓慢部分,以使用内部联接而不是子查询 where id in (select id from … ) 重构后的查询运行速度大约快100倍。 (约50秒〜0.3)我期望有一个改善,但任何人都可以解释为什么这么激烈? where子句中使用的列全部编入索引。 SQL是否每行执行一次where子句中的查询? 更新 – 解释结果: 区别在于“where id in()”查询的第二部分 – 2 DEPENDENT SUBQUERY submission_tags ref st_tag_id st_tag_id 4 const 2966 Using where vs 1索引行join: SIMPLE s eq_ref PRIMARY PRIMARY 4 newsladder_production.st.submission_id 1 Using index

HashSet与列表性能

很显然,genericsHashSet<T>类的search性能高于genericsList<T>类的search性能。 只需比较基于散列的密钥和List<T>类中的线性方法。 然而,计算散列键本身可能需要一些CPU周期,因此对于less量项目,线性search可以是HashSet<T>的真正替代。 我的问题:盈亏平衡点在哪里? 为了简化scheme(公平地),我们假设List<T>类使用元素的Equals()方法来标识一个项目。

为什么IN条件比sql中的“=”慢?

检查问题此SELECT查询需要180秒才能完成 (请检查问题本身的注释)。 IN只能与一个值比较,但时间差异仍然很大。 为什么这样?