[置顶]发现并解决ASP.NET内存耗尽(OOM),让服务器"永不重启"
posted @ 2010-10-12 18:29 我要学着点 阅读(2527) 评论(12) 编辑
posted @ 2010-10-12 18:29 我要学着点 阅读(2527) 评论(12) 编辑
前言
想把自己的想法整理成文,但又不知从何写起,特别是刚开始写文档,不知道如何组织语言,来阐述自己所想表达的观点,以及更加清晰有条理的展示给浏览者。因此导致写作效率降低,文章可读性不够。严重则导致对写文档的恐惧心理。而日常工作中,各类工作文档是必须要撰写的,那么如何写文档呢?我个人有如下建议
1、信心与心态
2、多查阅相关资料
3、思考
4、主题
5、罗列目录提纲
6、填充内容
7、优化文档
OK,下面我来填充内容啦。
一、 信心与心态
有时候有很多想法,还远远不够,需要把想法形成一套初步文档,对于不擅于写文档的朋友来说,肯定会是很痛苦的事情。但又很想去做,可又不知道如何做起,徘徊甚至导致放弃。导致不自信的心态原因有多种因素。多坚持去做,行动是培养自信心的最佳方式,要勇于迈出第一步。当迈出第一步,形成行为习惯,你就会克服不会的思想斗争了。当在遇到困难,记住一句话,没有绝对的困难,只是时间问题而已。
二、 多查阅相关文档
不擅于写文档,最主要是顾忌所要概述的文档的内容不够有深度,不具备说服力。缺乏对事物概括性的描述。这个是是直接体现一个人是否具备更宽广的知识面,也更直接体现出阅读兴趣是否浓厚,当然,世界文化博大如海,不必都去了解,只需要在必要的时候,去查阅前辈的经验之谈,从中获取别人的构思,行为方式,博览对比进行筛选并吸取。这样,在你写的时候才有更多的参考与事实说服力。(注:查阅也包含与别人聊,这种通过交流来相互补充、以及用语言描述的条理性) 其次,查阅也可以转换成“盗用”,并不是把所有内容盗成自己的,而是盗用书写文档的格式、风格、总体思想等。
三、 思考
1、有了一定的“口水”以后,那么就应该是思考自己的文档如何写的问题。把所查阅的信息经过大脑进行筛选,最后得出自己的观点。这也是对阅读消化,加深的过程。
2、思考文档最主要想要概括的主题思想,因为你所有的文档提纲、内容都将围绕它进行讲述、辩论、证明。
3、有了好的想法不一定够,因为读者不是你,那么如何生动形象、直观、简洁的说明事情,这也需要技巧,通过文字、图形、图表、代码来阐述观点,也许更容易让读者容易去接受、理解。
四、 主题
主题顾名思义是主要文档的概括性的皆意的标题,一个好的主题应该有高度的概括,有主要关键字。是吸引读者第一兴趣的方式。它是对整个文档的一个总结性命名,是文档的中心思想。
五、 罗列目录提纲
写文档其实跟建造楼房一样,一定要先建立“基脚”,只有先搭建好大的框架,并明确高楼应该是多少层,需要分多少期进行完成,每一期需要做什么。写文档也一样,先应该写出文档的概括性的提纲,整理出文档的目录结构。很多朋友在写文档的时候,因为没有清晰的目录提纲,在写的过程随兴而写,随着不断的文档文字写入,渐渐的偏离了主题中心。其次,一篇超过10页的文档,肯定不是一天也能完成的。如果没有条理清晰的目录提纲,随着时间的推移,可能造成自己都不明白该写那一部分,写的方向是什么。总结性一句话,罗列目录提纲让自己的文档变得更加有清晰的条理。
六、 填充内容
内容的填充,也是对中心主题的分层说明,解释。用自己的观点来描述。内容的书写切记简洁明了,不必要为填充内容而“内容”,更不能为了阐述问题而“阐述”。当然也不能单纯全部采用文字的方式,因为读者会觉得很枯燥,让文章显得单调。采用合理的图文来论证,生动有力。
七、 优化文档
好了,所有的文字内容都完成了,是该自我审视一番。好处很多。
1、可以让自己来欣赏自己的成果,更加有成就感,来给与自己信心的冲动
2、以读者的身份来感受,是否把你想要阐述的主题说清晰了。
3、改正文档用词不当,结构凌乱调整。
4、文档的整洁、干净
结束语,其实我也没写过规范的文档,更多的是个人的思考所写这篇文章,不专业是次要,重要的是我通过写文章来不断的提升自己的书写能力。更重要的是与别人分享、交流。
posted @ 2011-12-27 23:17 我要学着点 阅读(955) 评论(1) 编辑
雨,淅淅沥沥的下。从公司到家的路程犹如我的人生旅程一般。起初在避风港中,有温暖的手心为我筹建出一片天。当我开始步行走在错综复、未能预知的路途中。才知道这条路原来漫长又布满荆棘。
总是期望下雨,只喜欢那种清爽、宁静的感觉。犹如恋人般交织滑落,滴落在身上,顺着头上划过脸颊,顺着眼泪曾滑落的轨迹。
雨侵蚀干燥的衣服,渐渐与身体接触,渐渐的流入心中,如此清凉。
总是夜里期待雨的来临,用心倾听它给予的寂静。渴望去触摸它,而黑夜笼罩了整个大地,也吞噬了它柔美的线条。
在此时,这个诗情画意的时候,一种莫名的伤感越来越浓。也许那种悲伤只是埋在心底,外表仅仅是一层薄薄纸,雨侵而破。悲伤犹如洪水般不断涌出,不断汹涌,快速冲向身体的每个角落。此时随着微风轻抚我的身影。不由的打了一个冷颤。好冷.....不由的问自己,我的避风港呢?
回过神,雨愈来愈泛滥。归家之路我没有选择乘坐公交车,我知道,密封的车内,不会有一丝雨滴飘进,也不会打湿他们身体。
也许他们怕雨穿透他们身体,透视了他们内心。归家之路,我自己选择的。我不可能回头,因为回头只是拉大距离。很长一条路,每踏一步都艰难。这条路由多少个这样的十字路口啊?我也不记得了。只记得我已经在冒着雨的等待着红灯。我不恨什么,不恨没有雨伞为我护航。父母没有告诉我,没有雨伞的时候,一定要努力奔跑,也没有告诉我,去找一个避雨的屋檐。我知道屋檐即使坚不可摧,但它只是片刻的。我只是感觉在别人的屋檐下,我如此渺小,甚至会底下高傲的头。
不由我多虑,我冲出不属于我的避风港。加快脚步跑了出去。迎着不断飘落的雨,有所节奏心跳,我发现自己微笑了。它告诉我,没有雨伞的孩子,就要不断的奔跑。如果我不勇敢,就没有人能替我勇敢。
翻开收藏的一片文章<相信未来>,仔细又阅读了一遍,这不正是我所体验的生活吗?这不正是我所想要感悟的吗?
Koumi,没有雨伞的孩子,要努力奔跑……
没有雨伞的孩子,要奔跑
posted @ 2011-07-06 22:43 我要学着点 阅读(109) 评论(0) 编辑
又是一个无聊中...........
无聊中一个朋友谈及其换工作想发表一下自己的想法。
是的,人活在俗世,一份耕耘一份收获,你付出汗水,收获口粮,付出才智收获肯定,付出时间收获智慧!在人与人之间,你付出真诚,收获信赖。付出帮助,收获感激。
然而世间纷繁复杂、难以平衡。不同的人对事物的感受力不同!心态也随之受到冲击,如果不调节欠当,则将时刻计较世间不平,内心产生强大的抵触思想。其实,人在世间万物、自然界中显得那么渺小。我们无法改变客观条件,只有改变主观条件。
痛苦、仇恨、堕落是如此产生的呢?也许正如目前现状一样,我们在某一个公司里面上班,公司每天要求加班到多晚才回家。而每个月领着那微薄的工资后。心理难免产生很多想法。付出那么多时间、精力去为公司做事。而这种收支不平等对我们来说都难免平衡心态的。为何不这么想?你付出了你的劳动、智慧、技术。收获了工作经验,提升了你的技术能力与其他领域的知识!也许会收获了比金钱更为重要的团队磨合经验!以及人脉关系。也许这么比喻难以说服自己。那么恋人之间的比喻呢?你付出了你的真心,收获了彼此的快乐。一旦对方选择离开,失衡难免。那么我们该调整自己的心态,重新开始。乐观对待你的人生! 应该从我们收获了什么来平衡自己!很多时候,我们付出的时候就是期待回报,可是我们很少想到:是你自己心甘情愿的付出,别人并没有要求你,你在付出的同时就已经收获了能帮助他人的自豪和快乐!
最后,我引用一本书的片段,希望能点亮我们的心灯!
人跟人看似差不多,每天生活在一起,呼吸同样的空气,内心的境界却是天地之隔的区分。成功者都是那么无私付出,不计较得失的人。而斤斤计较的人永远无法脱颖而出。无私的付出能克制欲望,能淡泊明志,亦是通往幸福必经之路。
人生在世,重要的不是收获了多少,而是以怎样的心态去面对付出!
posted @ 2010-10-30 21:19 我要学着点 阅读(97) 评论(1) 编辑
posted @ 2010-10-18 17:31 我要学着点 阅读(1035) 评论(0) 编辑
网易魔兽总是忘了开,于是练小号,,,冲**技能,大号钓就不说了.小号再来重复,心头就纠结了.
观察了下**的流程.于是作了2个方案的假设,目的就是为了自动**...
方案1,走修改封包的路线.
使用sniffer抓了半天的包,没看出什么名堂来,也没找到加密特征..放弃.
方案2,模拟人工外挂吧。
捣鼓了一个晚上,今天又修正了些小bug,当然,因为是小东西,就没用工程设计模式了.代码太难看,就没传上来了,这里只是说说思路..每天讨论aspx,
还是来点winform的调剂调剂三.
最终制作这个外挂的思路定为模拟人的操作,人有哪些操作呢,我们来做个list
1抛竿,按钮放到按钮1上面,,,是固定的.
2人的眼睛会找浮漂的位置,然后把鼠标移到上面去等待点右键
3听到上钩的声音点右键 即可.
重复以上3步
我目前就打算模拟以上三步.
第一步,抛竿,好做,.NET2.0+已经可以直接调用SendKeys了
第二步,浮漂搜寻,.NET我没找到方法,不过没关系,大部分不可能的东西,都可以通过API找到,API不行我们还有C语言嘛...呵呵.API中 mouse_event
SetCursorPos GetCursorInfo 这些API用于模拟鼠标右键 和 移动鼠标逐行扫描(就像CRT显示器成像一样,只是有个灵敏度问题,我调成20个像素的
delta,就很合适了) 还有 鼠标形状变化检测(因为鼠标移动到饵上面,会变成齿轮形状,这样能鼠标自动移动到饵上面就会暂停)
第三步,上钩的声音触发右键,鼠标操作前面已经说了,声音触发,无非就是捕获声卡输出的波形,从wave的峰值上,检测是否有高于某个值的脉冲峰值(
这个不同的机器,不同音量,峰值不同,所以做成可以输入参数的这么一种UI即可),声卡有个特*,可以把输出的波形通过回路,直接输入到"输入音频
缓冲区",这样通过mmsAPI即可捕获声音波形,绘制,并进一步分析,这部分比较复杂一点,给出部分API:
// WaveOut calls
[DllImport(mmdll)]
public static extern int waveOutGetNumDevs();
[DllImport(mmdll)]
public static extern int waveOutPrepareHeader(IntPtr hWaveOut, ref WaveHdr lpWaveOutHdr, int uSize);
[DllImport(mmdll)]
public static extern int waveOutUnprepareHeader(IntPtr hWaveOut, ref WaveHdr lpWaveOutHdr, int uSize);
[DllImport(mmdll)]
public static extern int waveOutWrite(IntPtr hWaveOut, ref WaveHdr lpWaveOutHdr, int uSize);
[DllImport(mmdll)]
public static extern int waveOutOpen(out IntPtr hWaveOut, int uDeviceID, WaveFormat lpFormat, WaveDelegate
dwCallback, int dwInstance, int dwFlags);
[DllImport(mmdll)]
public static extern int waveOutReset(IntPtr hWaveOut);
[DllImport(mmdll)]
public static extern int waveOutClose(IntPtr hWaveOut);
[DllImport(mmdll)]
public static extern int waveOutPause(IntPtr hWaveOut);
[DllImport(mmdll)]
public static extern int waveOutRestart(IntPtr hWaveOut);
[DllImport(mmdll)]
public static extern int waveOutGetPosition(IntPtr hWaveOut, out int lpInfo, int uSize);
[DllImport(mmdll)]
public static extern int waveOutSetVolume(IntPtr hWaveOut, int dwVolume);
[DllImport(mmdll)]
public static extern int waveOutGetVolume(IntPtr hWaveOut, out int dwVolume);
// WaveIn calls
[DllImport(mmdll)]
public static extern int waveInGetNumDevs();
[DllImport(mmdll)]
public static extern int waveInAddBuffer(IntPtr hwi, ref WaveHdr pwh, int cbwh);
[DllImport(mmdll)]
public static extern int waveInClose(IntPtr hwi);
[DllImport(mmdll)]
public static extern int waveInOpen(out IntPtr phwi, int uDeviceID, WaveFormat lpFormat, WaveDelegate dwCallback,
int dwInstance, int dwFlags);
[DllImport(mmdll)]
public static extern int waveInPrepareHeader(IntPtr hWaveIn, ref WaveHdr lpWaveInHdr, int uSize);
[DllImport(mmdll)]
public static extern int waveInUnprepareHeader(IntPtr hWaveIn, ref WaveHdr lpWaveInHdr, int uSize);
[DllImport(mmdll)]
public static extern int waveInReset(IntPtr hwi);
[DllImport(mmdll)]
public static extern int waveInStart(IntPtr hwi);
[DllImport(mmdll)]
public static extern int waveInStop(IntPtr hwi);
之前走了个弯路,一开始对于浮漂的定位,我打算通过分析A图形在B图形中的位置来做,但是考虑到客户端环境的多样*,放弃了这种思路.
另外就是扫描效率,一开始我是全魔兽世界window扫描,但是扫描的速度太快,鼠标含不住浮漂,扫的太慢,鱼都跑了,最后就做了个踩点选项,用于定位
浮漂扔出去之后落点的范围,取值是这个area的左上角和右下角.这样,效率高多了,.
还有就是,因为是模拟人的操作,从游戏服务器端是看不出来的,所以不会被封号....当然如果由于你在一个点钓鱼太久,然后中途又杀了几个小
BL,那么别人举报你之后,难免GM来找你问话,如果这个时候看到你的行为像挂机的,,,,呵呵,,,那就不关我的事了,,,
我打算今天去哀嚎洞穴钓变异鱼做美味风蛇卖,嘿嘿,睡觉之前挂起,挂它几个晚上,去G团买装备去.
posted @ 2010-10-18 16:01 我要学着点 阅读(569) 评论(3) 编辑
额,昨天发表了一篇文章http://www.cnblogs.com/koumi/archive/2010/10/12/1849077.html,感谢老赵、亚力山大等等同志们的关注与指点。第一次发表文章,也存在很多条理、深入研究上的问题,导致此文章感觉就是一个误区。再接再励,请大家多多指点!
OS:windows系统平台。
posted @ 2010-10-13 13:50 我要学着点 阅读(304) 评论(0) 编辑
posted @ 2010-10-12 18:29 我要学着点 阅读(2527) 评论(12) 编辑