问题列表 - 第11028页

提前编译代码和本机编译代码之间有什么区别

我在Miguel de Icaza的一些写作中提到了使用mono制作iphone应用程序的提前编辑(aot).这听起来像是本机代码的结果.是这样还是有什么区别?

iphone mono native aot

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

优化equals()方法

equals()方法(以及该方法,也是该compareTo()方法)可以成为性能热点(例如,在高流量中HashMap).我想知道人们在证明有必要时采取了哪些措施来优化这些方法.

例如,IntelliJ IDEA生成以下内容:

public boolean equals(Object o) {
    if (this == o) return true;
    if (o == null || getClass() != o.getClass()) return false;

    ...
}
Run Code Online (Sandbox Code Playgroud)

您还遇到了哪些可以成为编写表现良好equals()方法的指南?

java performance equality equals

5
推荐指数
2
解决办法
2979
查看次数

什么是饥饿?

在多任务系统中,某些异常情况会阻止执行进程或线程的进度.我将这两个进程和线程简称为"进程".其中两个条件称为死锁和活锁.

前者指的是相互阻塞的进程,从而阻止了执行.后者指的是阻止彼此前进的过程,但实际上并不阻止执行.例如,他们可能会不断地让对方回滚交易,也无法完成它们.

另一个条件被称为资源饥饿,其中进程进展所需的一个或多个有限资源已被其耗尽,并且除非进程进展,否则无法恢复.这也是活锁的一个特例.

我想知道是否有任何其他定义,特别是学术定义,对于"饥饿",不仅限于"资源饥饿".特别欢迎参考文献.

而且,不,这不是功课.:-)

theory multitasking

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

在Python中一次迭代字符串2(或n)个字符

今天早些时候,我需要一次迭代一个字符串2个字符来解析格式化的字符串"+c-R+D-E"(有一些额外的字母).

我最终得到了这个,但它看起来很难看.我最后评论它正在做什么,因为它感觉不明显.它几乎似乎是pythonic,但并不完全.

# Might not be exact, but you get the idea, use the step
# parameter of range() and slicing to grab 2 chars at a time
s = "+c-R+D-e"
for op, code in (s[i:i+2] for i in range(0, len(s), 2)):
  print op, code
Run Code Online (Sandbox Code Playgroud)

有没有更好/更清洁的方法来做到这一点?

python iteration

32
推荐指数
5
解决办法
3万
查看次数

vim获取vim foldmarker的当前值

如何找到使用一个单词命令设置的vim变量的值

例如:set foldmarker = {,}

我正在为foldtext()编写一个简单的自定义函数来设置折叠区域的自定义一行摘要

当我用任何折叠标记打开文档而不是我硬编码到函数中时,它的效果很好但看起来很有趣

这是功能

set foldtext=GetCustomFoldText()
function GetCustomFoldText()
    let foldClose = '}'
    let foldTtl = v:foldend - v:foldstart
    return getline(v:foldstart) . ' (+) ' . foldTtl .  ' lines... ' . foldClose
endfunction
Run Code Online (Sandbox Code Playgroud)

这使得:

function myAwsomeFunction()
{
    // awsomeness here
    // awsomeness here
    // awsomeness here
}
Run Code Online (Sandbox Code Playgroud)

折成了这个:

function myAwsomeFunction()
{ (+) 5 lines... }
Run Code Online (Sandbox Code Playgroud)

在我使用不同的foldmarker编辑文档之前,这很棒

我正试图从foldmarker动态确定foldClose

vim

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

为什么反射在.NET中表现不佳?

我有兴趣知道技术原因:为什么反射在.NET中表现不佳?

.net reflection performance

5
推荐指数
3
解决办法
889
查看次数

最快的报价 - 逃避实施?

我正在研究一些规范化大量数据的代码.在处理结束时,将许多key ="value"对写出到文件中.

"值"部分可以是任何东西,因此在输出点,值必须具有任何嵌入式引号转义为\".

现在,我正在使用以下内容:

outstream << boost::regex_replace(src, rxquotesearch, quoterepl);
// (where rxquotesearch is  boost::regex("\"")  and quoterepl is "\\\\\"")
Run Code Online (Sandbox Code Playgroud)

但是,gprof显示我将大部分执行时间花在这个方法上,因为我必须为每一行的每个值调用它.

我很好奇是否有比这更快的方法.我不能使用std :: replace,因为我用两个替换一个字符.

谢谢你的建议.

c++ string replace escaping

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

为什么Internet Explorer需要"hasLayout"标志?

像许多在Internet Explorer网站上工作的开发人员一样,我似乎遇到了很多由臭名昭着的hasLayout旗帜引起的错误.

我理解这个标志的作用以及它是如何工作的(大多数情况下).我前几天阅读的一个很好的解释(虽然我找不到源代码)是hasLayout在IE中本质上意味着"使这个元素成为一个矩形".

它显然比那更复杂,但它很好地总结了(在我看来).

我不明白的是浏览器使用此标志的原因.在寻找答案时,我找到了一个听起来合乎逻辑的答案:

在CSS真正全面展开之前,Internet Explorer必须处理非常旧的遗留代码.作为使浏览器易于添加CSS的架构决策,该hasLayout标志用于触发某些CSS属性,以便正确呈现页面.这可以追溯到IE4时代.

这几乎对我有意义,直到我意识到Firefox(当时的Netscape)必须处理同样的问题.Netscape几乎与Internet Explorer一样长,但hasLayout据我所知,它不需要任何内部标志或类似内容.

看看hasLayout标志是如何在Internet Explorer中出现如此多的错误,有谁知道为什么IE有这个标志而其他浏览器不需要它?

如果有人有任何理论或碰巧知道答案,我想纯粹出于好奇而知道这件事.我想更多地了解为什么(或为什么不)这个标志是有用的.

css internet-explorer haslayout

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

在Android TabHost应用程序中完成活动间通信的最佳方式

这是交易:我有一个Android应用程序需要每X秒(当前60秒)调用一个Web服务.此应用程序有多个选项卡,这些选项卡都需要与数据本身进行交互.一个是MapView,一个是ListView,然后第三个是无关紧要的,但最终还需要得到一些全局数据.问题是我希望我的主要活动有一个在后台运行的线程,获取结果,然后指示TabHost中的两个子活动使用最新数据更新自己.此外,当用户单击选项卡并触发onCreate/onResume活动时,我还想通过从主活动获取最新数据来强制重绘.我真的很茫然.我已尝试使用服务和一些ghetto静态方法将活动的实例传递给服务,以便在定时器触发时调用特定函数来更新其视图,但减速非常糟糕且代码只是丑陋难看丑陋.有什么建议?

编辑:所以我在tabhost活动中将其实现为计时器驱动的线程,然后我在每个子活动中都有计时器驱动的线程,然后获取数据(以同步的方式)并更新它们的地图/列表.它的速度要快得多,但仍然感觉有点破解,尤其是我在父活动中调用自定义函数的部分,如下所示:

((MainActivity)getParent()).getNearbyMatches();
Run Code Online (Sandbox Code Playgroud)

这增加了一个强烈耦合的元素,我并不十分兴奋,但从性能的角度来看,它比它更好.我很欣赏已经给出的答案,并将对内容提供商进行一些研究,但我不确定是否要回到服务模型.

java android ipc

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

ViewState,div标签

我在页面上有多个Div标签,这些标签是动态的,即,根据某些标准,它们对于用户是否可见。我想将它们添加到页面的视图状态,以便在回发时不会再次隐藏它们,我该怎么做?

.net html c#

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