RSS 2.0 Feed
2005-06 Entries
摘要:以前一直以为Gmail的账号一直有效即使很少使用。这两天开始收到来自Gmail Team的Your Gmail account has been inactive for a long time的邮件,才注意到其明确的关闭休眠账户的政策。   在http://mail.google.com/support/bin/answer.py?answer=6563:如果您长期不登录自己的帐户,我们就会将其标记为"休眠"。九个月后,Google 将删除该帐户内的所有邮件,并关闭该帐户,用户名也会被收回。(其他基于 Web 的免费电子邮件提供商在短短 30 天后就会删除休眠帐户。) 如果您的休眠帐户被删除,在您先前的用户名被收回后,我们将不能保证您还可以再使用该用户名。请务必定期登录 Gmail!   对我来说,这个政策是个新闻,因为以前从来没有收到过类似的警告信。MSN的免费Hotmail的确是30 天后就会删除休眠帐户的邮件。但是,MSN并不回收用户名。...[阅读全文]

posted @ | Feedback (8) | Filed Under [ IT ]

摘要:问101:哪些值可以用作Resources中的Key? 答:String, LiteralExtension, TypeExtension 和StaticExtension可以作为Resources中的Key。   问102:{x:Null}因为被解释为NullExtension而不可以作为Key值。我如何能向Parser指明将{x:Null}理解为String而不是MarkupExtension? 答:使用{}这个转义符。以下为一正确的Xaml示范。   <Grid xmlns="http://schemas.microsoft.com/winfx/avalon/2005" xmlns:x="http://schemas.microsoft.com/winfx/xaml/2005">     <Grid.Resources>         <SolidColorBrush Color="LightBlue" x:Key="{}{x:Null}"/>     </Grid.Resources>     <Button Content="Sample 102" Background="{StaticResource {}{x:Null}}"/> </Grid>   尝试将{}去掉,您将得到一个解释器的错误信息。其内容正是101的回答。   贴子以"现状"提供且没有任何担保也没有授予任何权利...[阅读全文]

posted @ | Feedback (4) | Filed Under [ WPF/SilverLight ]

摘要:所有的.NET类都是基于System.Object类的。在Object中定义了返回值为int的虚函数GetHashCode。因为是虚函数,子类可以重写(override)GetHashCode以体现更合逻辑的算法。但是,重写后的GetHashCode可能会产生比较集中占用了Int32的狭窄区间的Hash Code(哈希值),使得更多的不同实例有着相同的值.   这样的实现一点也不违背长生Hash code的原则。在极端情形下即使所有的实例的哈希值都是相同的,这也是合法的算法。当然也是很差的算法。   而Object.GetHashCode的缺省实现则有着很好的哈希值分布。在实践中人们常发现一个实例的Hash Code几乎可以有和这个实例有一一对应的关系。也就是说,这是一个很佳的哈希算法。   问题是,当GetHashCode被子类重写后,我们如何能够在需要的情形下调用Object.GetHashCode的缺省实现呢?答案是: int System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(object o); 这是定义在程序集mscorlib之中的。   贴子以"现状"提供且没有任何担保也没有授予任何权利...[阅读全文]

posted @ | Feedback (8) | Filed Under [ FCL | 库函数 ]

摘要:实例函数(Instance Method)Thread.Suspend和Thread.Resume在2.0版本下被标为obsolete. 编译使用这2个函数的代码会得到warning. 当然在以后的.NET版本下可能就会是编译错误了。   其警告信息包含下列信息:Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources. (请使用System.Threading中的其他类,如Monitor, Mutex, Event, 和Semaphore,以同步线程和保护资源。)   Thread.Suspend和Thread.Resume被废弃的主要原因是因为其使用很容易造成线程死锁(Deadlock)。   静态函数(Static Method)Thread.Sleep的使用在.NET 2.0下不受影响。   贴子以"现状"提供且没有任何担保也没有授予任何权利...[阅读全文]

posted @ | Feedback (8) | Filed Under [ FCL | 库函数 ]

摘要:System.StringComparison用于String.Compare和String.Equal的相关函数之中,对于常用的字符串比较操作,提供了更简便的支持。   其枚举值包括:CurrentCulture, CurrentCultureIgnoreCase, InvariantCulture, InvariantCultureIgnoreCase, Ordinal, 和OrdinalIgnoreCase.   在2.0之前使用的代码如: String.Compare(mimeType, "image/jpe", true, CultureInfo.InvariantCulture) 就可以写成: String.Compare(mimeType, "image/jpe", StringComparison.InvariantCulture);   使用StringComparison,既便于理解,又避免出错。...[阅读全文]

posted @ | Feedback (2) | Filed Under [ FCL | 库函数 ]