摘要: 前几天,O'Reilly出版社发表了一本免费的在线书籍,是“What's New in Flash Player 11”,里面有一个关于立方贝泽尔曲线的小Demo,但是太过简单。那个Demo的源码是这样的:package{importflash.display.Sprite;[SWF(width="600",height="500",backgroundColor="#CCCCCC")]publicclassCubicBezierCurveextendsSprite{privatevardrawingHolder:Sp 阅读全文
posted @ 2012-04-16 23:41 ChaunceyHao 阅读(312) 评论(0) 推荐(0)
摘要: Flash Player 11引入了一个全新的功能是异步解码位图的功能,这个功能对某些类型的Flash应用会很有效,尤其是需要加载大分辨率的位图的相册或游戏会有显著效果。这 个功能在Flash Player 11里的实现非常简单,需要使用flash.system.ImageDecodingPolicy这个类。这个类的使用,是通过 flash.system.LoaderContext类中制定imageDecodingPolicy属性的值。这个属性的两个值描述了不同的策略(来 自官方Help):ON_DEMAND:在需要时同步解码图像。此设置对较小的图像非常有用。ON_LOAD:在图像加载后立即. 阅读全文
posted @ 2012-04-16 23:35 ChaunceyHao 阅读(146) 评论(0) 推荐(0)
摘要: 网管员在工作中遇到的网络问题,故障现象都是千变万化、多种多样的。所以也不能用单一、固定的方法或知识去解决它们,必须根据实际的故障现象,结合 自己的工作经验,运用多种方法和知识灵活的排除故障。下面就是自己在实际工作中碰到的一则故障实例,通过对故障现象的分析,和故障的排除过程来说明排除网 络故障并不是一件简简单单的事情。 图1 公司网络服务器部署图 一、公司网络服务器部署架构 单位网络中的服务器部署结构图,如图1所示。为了确保重要设备的稳定性和冗余性,核心层交换机使用两台Cisco 4506,通过Trunk线连接。在核心交换机上连接有单位重要的服务器,如安全中心、DHCP、E-MAIL和WEB.. 阅读全文
posted @ 2012-04-16 22:14 ChaunceyHao 阅读(847) 评论(0) 推荐(0)
摘要: 用Mid函数,substring是SQL Server的语法。 阅读全文
posted @ 2012-04-16 21:56 ChaunceyHao 阅读(303) 评论(0) 推荐(0)
摘要: 无线网络IP地址冲突是我们最为常见的网络故障之一,经常禁用然后启用。那么有时候这个方法就不管用了,那么如何解决呢?当无线接入点作为DHCP服务器工作时,它们可能会引起两个主要问题。 第一是增加IP地址冲突的可能性。市场上的大多数无线接入点是通过默认配置来分配客户端无线网络IP地址,其范围是192.168.0.x。这是一 个问题,因为在一个网段中包含多个无线接入点是相当普遍的情况。如果这些接入点每个都分配了相同的DHCP作用域,那么无线网络IP冲突将在所难免。请记 住,这些地址分配可能不仅局限于无线客户端。许多无线接入点也会分配IP地址给有线网络客户端,所以你可能在你的有线网络上遇到有线网络客户 阅读全文
posted @ 2012-04-16 21:34 ChaunceyHao 阅读(372) 评论(0) 推荐(0)
摘要: 有时候,当我们调用了缓存的API之后,我们就会认为:数据已经被换成了,之后就可以直接读取缓存中的数据。尽管情况很多时候如此,但是不是绝对的!很多的问题就是这样产生的! 我们通过一个例子来讲解。 例如,对于一个ASP.NET 应用而言,如果我们在一个按钮的Click事件中调用了缓存API,然后在页面呈现的时候,就去读取缓存,代码如下: 上面的代码照道理来说是对的,但是会发生问题。按钮点击之后回传页面,然后呈现页面的时候显示数据,流程没有问题。但是没有考虑到这样一个问题:如果服务器的内存紧张,而导致进行服务器内存的回收,那么很有可能缓存的数据就没有了! 这里有朋友就要说了:内存回收这么快? 这主. 阅读全文
posted @ 2012-04-16 13:36 ChaunceyHao 阅读(226) 评论(0) 推荐(0)
摘要: 当数据放在缓存中的时候,我们程序的多个线程都可以访问这个公共的区域。多个线程在访问缓存数据的时候,会产生一些竞争,这也是多线程中常常发生的问题。 下面我们分别从本地内存缓存与分布式缓存两个方面介绍竞争的带来的问题。 看下面的一段代码: 对于本地内存缓存,对于上面的代码,当这个三个线程运行起来之后,在线程1中,item的值很多时候可能为1,线程2可能是2,线程3可能是3。当然,这不一定!只是大多数情况下的可能值! 如果是对于分布式缓存,就不好说了!因为数据的修改不是立刻发生在本机的内存中的,而是经过了一个跨进程的过程。 有一些缓存模块已经实现了加锁的方式来解决这个问题,例如AppFabric。. 阅读全文
posted @ 2012-04-16 13:33 ChaunceyHao 阅读(256) 评论(0) 推荐(0)
摘要: 有时候,我们想要把一些大对象缓存起来,因为产生一次大对象的代价很大,我们需要产生一次,尽可能的多次使用,从而提升响应。 提到大对象,这里就很有必要对其进行一个比较深入的介绍了。在.NET中,所谓的大对象,就是指的其占用的内存大于了85K的对象,下面通过一个比较将问题说清楚。 如果现在有一个Person类的集合,定义为List<Person>,每个Person对象占用1K的内存,如果这个Person集合中包含了100个Person对象实例,那么这个集合是否是大对象呢? 回答是:不是! 因为集合中只是包含的Person对象实例的引用而言,即,在.NET的托管堆上面,这个Person集合 阅读全文
posted @ 2012-04-16 13:01 ChaunceyHao 阅读(387) 评论(0) 推荐(0)