<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>army8735 &#187; as3</title>
	<atom:link href="http://army8735.org/tag/as3/feed" rel="self" type="application/rss+xml" />
	<link>http://army8735.org</link>
	<description>我可以A，我也可以-A，我可以同时A和-A。</description>
	<lastBuildDate>Fri, 25 Nov 2011 04:07:52 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>发现一个基于MIT的as3的高效MD5实现</title>
		<link>http://army8735.org/2010/11/30/846.html</link>
		<comments>http://army8735.org/2010/11/30/846.html#comments</comments>
		<pubDate>Tue, 30 Nov 2010 06:04:54 +0000</pubDate>
		<dc:creator>army</dc:creator>
				<category><![CDATA[as、flex]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[md5]]></category>

		<guid isPermaLink="false">http://army8735.org/?p=846</guid>
		<description><![CDATA[com.adobe.crypto官方库的md5算法性能实在不敢恭维，算个10m的byteArray在我机子上跑了大概12s！我勒个去，这可怎么叫人活。随后找到个by.blooddy.crypto，提升了2个数量级的性能！
作者博客：http://va.lent.in/blog/2010/06/23/100x-times-faster-md5-and-more/
更新的博客：http://va.lent.in/blog/2010/07/10/more-on-faster-md5/
下载地址：http://www.blooddy.by/en/crypto/
我实际测试了下，10M的东西大概用了100ms左右，的确至少提升了100倍，作者此言非虚也！只是这个swc必须在flash cs5下编译才能成功，我用cs4调试半天老是报Main方法异常，郁闷很久才发现为什么。
]]></description>
			<content:encoded><![CDATA[<p>com.adobe.crypto官方库的md5算法性能实在不敢恭维，算个10m的byteArray在我机子上跑了大概12s！我勒个去，这可怎么叫人活。随后找到个by.blooddy.crypto，提升了2个数量级的性能！</p>
<p>作者博客：<a href="http://va.lent.in/blog/2010/06/23/100x-times-faster-md5-and-more/">http://va.lent.in/blog/2010/06/23/100x-times-faster-md5-and-more/</a></p>
<p>更新的博客：<a href="http://va.lent.in/blog/2010/07/10/more-on-faster-md5/">http://va.lent.in/blog/2010/07/10/more-on-faster-md5/</a></p>
<p>下载地址：<a href="http://www.blooddy.by/en/crypto/">http://www.blooddy.by/en/crypto/</a></p>
<p>我实际测试了下，10M的东西大概用了100ms左右，的确至少提升了100倍，作者此言非虚也！只是这个swc必须在flash cs5下编译才能成功，我用cs4调试半天老是报Main方法异常，郁闷很久才发现为什么。</p>
]]></content:encoded>
			<wfw:commentRss>http://army8735.org/2010/11/30/846.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>as3中字符串相关操作测试（jssc5）</title>
		<link>http://army8735.org/2009/08/27/72.html</link>
		<comments>http://army8735.org/2009/08/27/72.html#comments</comments>
		<pubDate>Thu, 27 Aug 2009 10:09:45 +0000</pubDate>
		<dc:creator>army8735</dc:creator>
				<category><![CDATA[as、flex]]></category>
		<category><![CDATA[jssc]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[jssc5]]></category>

		<guid isPermaLink="false">http://army.512j.com/blog/?p=72</guid>
		<description><![CDATA[源于新的jssc5的设想，开辟基于词法分析和语法分析的高亮器。当然，词法分析和语法分析我还在学习中，编译原理没好好学，大学时间那个悔啊……
简单测试了下，主要是性能方面。hax曾经做过chrome下面正则的测试，实验证明google浏览器对正则的优化真的很牛X！不过我考虑仍将继续基于flash平台来做，原因很显然：词法分析必须遍历字符串，而js的遍历性能目前来看是实在不敢恭维的。
大概排序一下吧：
直接比较字符串最快：s == &#8220;string&#8221;；
用as3内置的indexOf来寻找其次；
判断charCode和indexOf差不多：比如单个字符是否数字；
用isNaN结合parseInt来判断是否数字就比较慢了，但不限单个字符，大概是charCode的数倍到十倍，所以要综合考虑；
用正则最慢！这和js情况正好相反，但正则功能最强大，不过目前情况来看用到正则的可能性很少。
唔，jssc5搞定后JAse研究就能迈进一大步了。
&#8212;-
更新：
发现Array类的push()操作性能居然还不如手动写入？！
真晕啊，不知道Adobe搞什么鬼。
array.push(value)还不如array[array.length] = value;，当然舍却length用计数器还要快一点点。
]]></description>
			<content:encoded><![CDATA[<p>源于新的jssc5的设想，开辟基于词法分析和语法分析的高亮器。当然，词法分析和语法分析我还在学习中，编译原理没好好学，大学时间那个悔啊……</p>
<p>简单测试了下，主要是性能方面。hax曾经做过chrome下面正则的测试，实验证明google浏览器对正则的优化真的很牛X！不过我考虑仍将继续基于flash平台来做，原因很显然：词法分析必须遍历字符串，而js的遍历性能目前来看是实在不敢恭维的。</p>
<p><span style="color: #ff0000;">大概排序一下吧：</span></p>
<p>直接比较字符串最快：s == &#8220;string&#8221;；</p>
<p>用as3内置的indexOf来寻找其次；</p>
<p>判断charCode和indexOf差不多：比如单个字符是否数字；</p>
<p>用isNaN结合parseInt来判断是否数字就比较慢了，但不限单个字符，大概是charCode的数倍到十倍，所以要综合考虑；</p>
<p>用正则最慢！这和js情况正好相反，但正则功能最强大，不过目前情况来看用到正则的可能性很少。</p>
<p>唔，jssc5搞定后JAse研究就能迈进一大步了。</p>
<p>&#8212;-</p>
<p><span style="color: #ff0000;">更新：</span></p>
<p>发现Array类的push()操作性能居然还不如手动写入？！</p>
<p>真晕啊，不知道Adobe搞什么鬼。</p>
<p>array.push(value)还不如array[array.length] = value;，当然舍却length用计数器还要快一点点。</p>
]]></content:encoded>
			<wfw:commentRss>http://army8735.org/2009/08/27/72.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AS3的socket接收数据</title>
		<link>http://army8735.org/2008/10/22/32.html</link>
		<comments>http://army8735.org/2008/10/22/32.html#comments</comments>
		<pubDate>Wed, 22 Oct 2008 14:08:20 +0000</pubDate>
		<dc:creator>army8735</dc:creator>
				<category><![CDATA[as、flex]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[socket]]></category>

		<guid isPermaLink="false">http://army.512j.com/blog/?p=32</guid>
		<description><![CDATA[《Fantasy  Sky》的进展顺利，一切继续着。今天下午把10种职业基本补齐了，除了小偷还缺4张截图，小事而已。于是想来张全家福，突然发现bug。
同时登陆多个账号时，头几个显示还正常，后面的就看不见前面同张地图内的人了。debug半天，发现数据完全正常，接收发送都处理到了，可真杀死脑细胞啊。
最终在客户端想了个办法把每次socket接收的数据都打印出来看看，终于发现问题所在：
swf在接收socket的数据时，是用触发侦听进行的。然而可能服务器端两次发送的数据由于延迟原因同时到达客户端了，此时由于程序编写的问题，就会出现冲突。
比如接收到  str1 这一段数据，客户端判别应该生成一个人物a；接收到 str2 就该生成b。由于延迟，二者合到一起了，客户端读取的是 str1 + str2  的内容，错误就出现在这里了。
解决得办法就是换用xmlsocket对象，它用\0字符为结尾标识每次传送数据的结束，不会起冲突；又或者仍然用低层的socket对象，它有readInt()方法，可以每次在数据开头设个长度，用来标识此次接收多少字节。
前者容易，后者更强大。综合来说，我先用前者试一试。
]]></description>
			<content:encoded><![CDATA[<p>《Fantasy  Sky》的进展顺利，一切继续着。今天下午把10种职业基本补齐了，除了小偷还缺4张截图，小事而已。于是想来张全家福，突然发现bug。</p>
<p>同时登陆多个账号时，头几个显示还正常，后面的就看不见前面同张地图内的人了。debug半天，发现数据完全正常，接收发送都处理到了，可真杀死脑细胞啊。</p>
<p>最终在客户端想了个办法把每次socket接收的数据都打印出来看看，终于发现问题所在：</p>
<p>swf在接收socket的数据时，是用触发侦听进行的。然而可能服务器端两次发送的数据由于延迟原因同时到达客户端了，此时由于程序编写的问题，就会出现冲突。</p>
<p>比如接收到  str1 这一段数据，客户端判别应该生成一个人物a；接收到 str2 就该生成b。由于延迟，二者合到一起了，客户端读取的是 str1 + str2  的内容，错误就出现在这里了。</p>
<p>解决得办法就是换用xmlsocket对象，它用\0字符为结尾标识每次传送数据的结束，不会起冲突；又或者仍然用低层的socket对象，它有readInt()方法，可以每次在数据开头设个长度，用来标识此次接收多少字节。</p>
<p>前者容易，后者更强大。综合来说，我先用前者试一试。</p>
]]></content:encoded>
			<wfw:commentRss>http://army8735.org/2008/10/22/32.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>没想到as3的urlload连续发送会被忽略</title>
		<link>http://army8735.org/2008/08/21/21.html</link>
		<comments>http://army8735.org/2008/08/21/21.html#comments</comments>
		<pubDate>Thu, 21 Aug 2008 10:15:26 +0000</pubDate>
		<dc:creator>army8735</dc:creator>
				<category><![CDATA[as、flex]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[urlloader]]></category>

		<guid isPermaLink="false">http://army.512j.com/blog/?p=21</guid>
		<description><![CDATA[这两天在做intel的拼图小游戏，进展很迅速。
期间在记录日志时出了点问题，连续两个urlrequest时候，第二个很容易就被第一个给覆盖掉。料想不会是后端脚本的事，应该是flash的问题。稍微有点时间差的话，就会正常。
很奇特的现象。
]]></description>
			<content:encoded><![CDATA[<p>这两天在做intel的拼图小游戏，进展很迅速。</p>
<p>期间在记录日志时出了点问题，连续两个urlrequest时候，第二个很容易就被第一个给覆盖掉。料想不会是后端脚本的事，应该是flash的问题。稍微有点时间差的话，就会正常。</p>
<p>很奇特的现象。</p>
]]></content:encoded>
			<wfw:commentRss>http://army8735.org/2008/08/21/21.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

