摘要:
程序为什么越优化越慢?正在开发一个基于Nios II内核的项目,使用的开发环境是nios for eclipse,编译器是GCC,整体功能实现后,开始优化速度。默认没有开启gcc的优化选项,一段关键函数Key的运行时间为30s,开启O1一级优化后,程序大小从15KB减小到12KB,但运行时间增加到了35s,开启O2后,程序大小没有明显的减少,但运行时间明显提速到了23s,为了赶工期,暂时没去追究O1导致降速的原因,一直开着O2继续测试程序。直到修改完另外一个和关键程序毫无耦合关系的函数A,回过头又去测试了下那段关键函数Key的运行时间,在O2的情况下尽然又降到了29s,改为O1后,又回到了25 阅读全文
posted @ 2013-05-14 18:31
HackerVirus
阅读(349)
评论(0)
推荐(0)
摘要:
在ASP.NET MVC Web API中使用Apworks开发第一个HTTP服务上周我发布了Apworks框架的最新版本,打算写点文章来介绍如何在实际项目中使用Apworks进行开发。今天先简单写一点东西,首先说明一下,Apworks本身是面向领域驱动的一套开发框架,因此,领域模型的分析和建立就是使用Apworks的重点;然而,在大家对Apworks还没有任何了解的基础上,我暂时先抛开领域模型的建立,先向大家展示一下,如何使用Apworks开发第一个可以运行的程序。在这篇文章的介绍中,我们的领域模型只有一个聚合:日记(Note),而且我们会将这个聚合对象同时用作数据传输对象,这当然与DDD的 阅读全文
posted @ 2013-05-14 17:52
HackerVirus
阅读(198)
评论(0)
推荐(0)
摘要:
多线程学习之限制同时运行的线程数量最近闲暇之余,来搞搞,多线程学习,只为下个项目做准备,随着项目优化,开发,性能的考虑,慢慢要用到些以前不用的东西,先开始熟悉熟悉先把东西放上来,欢迎大家赐教,比较好久木玩这东西了,肯定不完善,希望大家提出宝贵意见啊(嘿嘿~~)大概功能描述:为了提高数据处理速度,把任务队列分别交给不同子线程去完成,同时对启动的新线程数量限制,避免线程数量过多照成机器卡壳 1 using System; 2 using System.Threading; 3 namespace ThreadTest 4 { 5 class ThreadMaxNum 6 { 7 ... 阅读全文
posted @ 2013-05-14 17:36
HackerVirus
阅读(584)
评论(0)
推荐(0)
摘要:
【IT企业笔试集】2013年阿里巴巴实习生招聘笔试题目及解答有幸参加了2013年5月5日阿里巴巴的实习生招聘笔试,这次笔试的难度对我而言,前半部分不涉及算法的内容,都比较容易。而后面3道关于算法的习题都解答得很不好,暴露出来自己的一些问题。本人马上也要毕业了,想通过这个博客记录下自己在准备应聘过程中所遇到的各种问题、难题,记录下来以供查阅,同时与诸君分享,欢迎积极交流。题目来源:http://50vip.com/blog.php?i=223一、单项选择题1.下列说法不正确的是:A.SATA硬盘的速度速度大约为500Mbps/sB.读取18XDVD光盘数据的速度为1GbpsC.千兆以太网的数据读 阅读全文
posted @ 2013-05-14 17:17
HackerVirus
阅读(470)
评论(0)
推荐(0)
摘要:
.NET:可扩展的单据编号生成器 之 基于缓冲区的顺序号背景我在上篇文章“.NET:可扩展的单据编号生成器 之 顺序号(防止重复)”中介绍了如何使用“种子表”和“悲观锁”解决顺序号的问题。昨天找朋友讨论,说这种速度不够高,今天就稍微改进一下,引入一个内存缓冲区,提高生成的速度。思路引入内存缓冲区后,顺序号的生产流程变为:在内存中维护一个顺序号区间,在这个区间内,就直接查内存,否则更新种子表并重新更新内存区间。还是直接看代码吧。实现代码下载:http://yunpan.cn/Q5jj5yedRAtk5。SeedCodeRuleProvider.cs 1 using System; 2 usi.. 阅读全文
posted @ 2013-05-14 09:47
HackerVirus
阅读(192)
评论(0)
推荐(0)
摘要:
学习 easyui 之四:禁用 linkbutton 问题1.问题的起源linkbutton 是 easyui 中常用的一个控件,我们可以使用它创建按钮。用法很简单,使用 a 元素,标记上 easyui-linkbutton 的类就可以看到按钮了。<a id="btn" class="easyui-linkbutton">这是一个按钮</a>看起来就是这个样子或者使用代码方式。$("#btn").linkbutton();不过,点了也没有作用,如果希望有作用,那么,再为它添加一个事件处理吧。通常你会使用 jQu 阅读全文
posted @ 2013-05-14 09:46
HackerVirus
阅读(1491)
评论(0)
推荐(0)
摘要:
计算机是怎么样工作的?实验环境:Ubuntu12.04下面我们通过 example.c 代码分别生成.cpp .s .o 和ELF可执行文件,并加载运行来分析 程序 example在CPU上执行的整个过程,并由此分析单任务计算机和多任务计算机的工作原理: example.c 2 int g(int x) 3 { 4 return x + 3; 5 } 6 7 int f(int x) 8 { 9 return g(x);10 }11 int main()12 {13 return f(8) + 1;16 }一:为了在系统上运行example.c 程序,每条C语句都必须... 阅读全文
posted @ 2013-05-14 09:45
HackerVirus
阅读(287)
评论(0)
推荐(0)