C#事件和线程安全

我经常听到/阅读以下build议: 在检查一个事件之前,一定要先制作一个事件的副本,然后将其null 。 这将消除线程潜在的问题,在检查null的地方和发生事件的地方,事件变为null 。 // Copy the event delegate before checking/calling EventHandler copy = TheEvent; if (copy != null) copy(this, EventArgs.Empty); // Call any handlers on the copied list 更新 :我从阅读优化思想,这可能也需要事件成员变动,但Jon Skeet在他的答案中指出,CLR不会优化副本。 但同时,为了这个问题发生,另一个线程必须做这样的事情: // Better delist from event – don't want our handler called from now on: otherObject.TheEvent -= OnTheEvent; // Good, now we […]

根据文字调整UILabel的高度

考虑一下我在UILabel (一长串dynamic文本)中有以下文本: 由于外星人军队远远超过了队伍,玩家必须利用后世界末日的世界,如在垃圾箱,柱子,汽车,瓦砾等物体后面寻找掩护。 我想调整UILabel's高度,以便文本可以适应。我使用UILabel以下属性来使文本内包装。 myUILabel.lineBreakMode = UILineBreakModeWordWrap; myUILabel.numberOfLines = 0; 请让我知道,如果我不是在正确的方向前进。 谢谢。

在Java中迭代列表的方法?

对于Java语言来说,我尝试熟悉所有的方法(或者至less是非病态方法),以便可以遍历列表(或者其他集合)以及每个方法的优缺点。 给定一个List<E> list对象,我知道以下方法遍历所有元素: 基本的 循环 (当然,在do while循环中也有等价的) // Not recommended (see below)! for (int i = 0; i < list.size(); i++) { E element = list.get(i); // 1 – can call methods of element // 2 – can use i to make index-based calls to methods of list // … } 注意:正如@a​​marseillan所指出的那样,这个表单对迭代List s来说是一个糟糕的select,因为get方法的实际实现可能不如使用Iterator时那样高效。 例如, LinkedList实现必须遍历i之前的所有元素才能获得第i个元素。 […]

如何找出哪个DOM元素具有焦点?

我想找出,在Javascript中,哪些元素目前有重点。 我一直在浏览DOM,但还没有find我所需要的。 有没有办法做到这一点,以及如何? 我在找这个的原因是: 我正在试图制作像箭头一样的键,并通过input元素表进行导航。 选项卡现在工作,但input和箭头不默认它看起来。 我已经设置了关键处理部分,但现在我需要弄清楚如何在事件处理函数中移动焦点。

使用Glob()在Python中recursion地查找文件?

这是我的: glob(os.path.join('src','*.c')) 但我想searchsrc的子文件夹。 像这样的东西可以工作: glob(os.path.join('src','*.c')) glob(os.path.join('src','*','*.c')) glob(os.path.join('src','*','*','*.c')) glob(os.path.join('src','*','*','*','*.c')) 但这显然是有限的,笨重的。

R列表到dataframe

我有一个嵌套的数据列表。 它的长度是132,每个项目是一个长度为20的列表。是否有一个快速的方法来将这个结构转换成一个有132行和20列数据的数据框? 我是R新手,所以我想这可能是一个简单的方法。 我在这里search堆栈溢出,找不到类似的问题,所以我很抱歉,如果我错过了。 一些示例数据: l <- replicate( 132, list(sample(letters, 20)), simplify = FALSE )

如何将元素移动到另一个元素?

我想在另一个DIV元素中移动一个DIV元素。 例如,我想移动这个(包括所有的孩子): <div id="source"> … </div> 进入这个: <div id="destination"> … </div> 所以我有这个: <div id="destination"> <div id="source"> … </div> </div>

第十亿次相对import

我来过这里 http://www.python.org/dev/peps/pep-0328/ http://docs.python.org/2/tutorial/modules.html#packages Python包:相对导入 python相对导入示例代码不起作用 相对python导入的最终答案 Python中的相对导入 Python:禁用相对导入 以及大量的url,我没有复制,有些是在其他网站上,有些在我以为我会很快得到解决scheme。 永远反复出现的问题是:对于Windows 7,32位Python 2.7.3,我该如何解决这个“试图在非包装中进行相对导入”的消息? 我在pep-0328上构build了一个完整的包: package/ __init__.py subpackage1/ __init__.py moduleX.py moduleY.py subpackage2/ __init__.py moduleZ.py moduleA.py 我确实在适当的模块中创build了名为垃圾邮件和鸡蛋的函数。 自然,它没有工作。 答案显然是在我列出的第四个URL中,但是这些都是我的校友。 在我访问的其中一个url上有这样的回应: 相对导入使用模块的名称属性来确定模块在包层次结构中的位置。 如果模块的名称不包含任何包信息(例如,它被设置为“main”),则无论模块在文件系统上的实际位置如何,相对导入都将被parsing为模块是顶级模块。 上面的回应看起来很有希望,但对我来说这全是象形文字。 所以我的问题,我怎么让Python不返回给我“试图在非包的相对导入”? 有一个答案,涉及-m,据说。 有人可以告诉我为什么Python给出了这个错误信息, 它是什么意思,非包装! ,为什么以及如何定义一个“一揽子”,并且准确的答案对于一个幼儿园的学生来说是很容易理解的 。 编辑:导入是从控制台完成的。

何时使用接口而不是抽象类,反之亦然?

这可能是一个通用的OOP问题。 我想根据用法在接口和抽象类之间进行通用的比较。 什么时候想要使用一个接口,什么时候想要使用一个抽象类 ?

我如何在Java中调用另一个构造函数?

是否有可能从另一个(在同一个类中,而不是从一个子类)调用一个构造函数? 如果是的话如何? 调用另一个构造函数的最好方法是什么(如果有几种方法可以这样做的话)?