以前在写个别程序的时候老是喜欢使用纯API编程. 在C++中无大问题,可是到了DELPHI中情况就不一样了. 当你用 DELPHI写的多线程程序莫名其妙的内存错误,特别是字符串(string)操作; 或者程序无故终止,又没有任何提示,你需要认真分析可能是你直接使用了CreateThread. C++的linker可以自己设置运行库的形式,选择支持单线程还是多线程模式. DELPHI是自动判别的,那他是如何自动判别的呢,这就要看看他在System单元提供的函数BeginThread了. 听说在VC…
函数重载重载的思想很简单:编译器允许你用同一名字定义多个函数或过程,只要它们所带的参数不同.实际上,编译器是通过检测参数来确定需要调用的例程.下面是从VCL 的数学单元(Math Unit)中摘录的一系列函数: function Min (A,B: Integer): Integer; overload; function Min (A,B: Int64): Int64; overload; function Min (A,B: Single): Single; overload; functi…
一. ExecuteNonQuery和ExecuteScalar 对数据的更新不需要返回结果集,建议使用ExecuteNonQuery.由于不返回结果集可省掉网络数据传输.它仅仅返回受影响的行数.如果只需更新数据用ExecuteNonQuery性能的开销比较小. ExecuteScalar它只返回结果集中第一行的第一列.使用 ExecuteScalar 方法从数据库中检索单个值(例如id号).与使用 ExecuteReader 方法, 返回的数据执行生成单个值所需的操作相比,此操作需要的代码较少…
概要 本章是从<Effective Java>摘录整理出来的关于异常处理的几条建议.内容包括:第1条: 只针对不正常的情况才使用异常第2条: 对于可恢复的条件使用被检查的异常,对于程序错误使用运行时异常第3条: 避免不必要的使用被检查的异常第4条: 尽量使用标准的异常第5条: 抛出的异常要适合于相应的抽象第6条: 每个方法抛出的异常都要有文档第7条: 在细节消息中包含失败 -- 捕获消息第8条: 努力使失败保持原子性第9条: 不要忽略异常 它们对应原书中"第8章 异常"部分…
建议68:从System.Exception或其他常见的基本异常中派生异常 微软建议:从System.Exception或其他常见基本异常之一派生异常.在Visual Studio中输入Exception,然后按快捷键Tab,VS会自动创建一个自定义异常类: [Serializable] public class MyException : Exception { // // For guidelines regarding the creation of new exception types…
package com.swift; import java.util.Arrays; public class ArrayTest { public static void main(String[] args) { /* * 定义一个int类型的数组,数组中元素为{5,7,3,9,4}. * 求出数组中的最小值,并判断最小值是否为偶数,如果是偶数则输出“最小值为偶数”,如果不是偶数则输出“最小值为奇数”.打印如下 */ int arr[]= {5,7,3,9,4}; Arrays.sort(…
返回浏览历史中的其他页面 go()方法,根据当前所处的页面,加载 history 列表中的某个具体的页面. 语法: window.history.go(number); 参数: 浏览器中,返回当前页面之前浏览过的第二个历史页面,代码如下: window.history.go(-2); 注意:和在浏览器中单击两次后退按钮操作一样. 同理,返回当前页面之后浏览过的第三个历史页面,代码如下: window.history.go(3); 任务 补充右边代码编辑器第9行和第13行,使用go()方法,完善G…
stp域中两台switch互联接口出现两口均为root口 并且在现有stp区域中无法确定根桥设备位置:分析其原因并赋予解决办法 1.于上图描述了案例中当前组网环境的各交换机位置与stp状态情况  : 可以看出LSW3是stp域的网关:理所应当.stp的根桥应该落在LSW1上:并且LSW1上的eth0/0/1口本因是Designated port:现因为LSW4mac地址最小,stp根桥选在了LSW4上: 在排查过程中:通过远端lldp邻居 :只能在LSW1上发现LSW2的lldp邻居,并无法发现…
SQL Server中的最大并行度(max degree of parallelism)如何设置呢? 设置max degree of parallelism有什么好的建议和指导方针呢?在微软官方文档Recommendations and guidelines for the "max degree of parallelism" configuration option in SQL Server有这方面的建议和指导方针 Use the following guidelines whe…
译者按: 实践中会发现,生产环境中使用单个Docker节点是远远不够的,搭建Docker集群势在必行.然而,面对Kubernetes, Mesos以及Swarm等众多容器集群系统,我们该如何选择呢?它们之中,Swarm是Docker原生的,同时也是最简单,最易学,最节省资源的,至少值得我们多了解一下.本文将介绍一些非常实用的建议. 原文: Tips for using Docker Swarm mode in production 译者: Fundebug 为了保证可读性,本文采用意译而非直译.…
本文出处:http://blog.csdn.net/chaijunkun/article/details/35796335,转载请注明. 因为本人不定期会整理相关博文,会对对应内容作出完好. 因此强烈建议在原始出处查看此文. 这两天一直在整理一些旧的代码,将原来的混乱东西升级到maven管理. 这当中也免不了将大项目拆分成若干个module来管理. 然而为了在測试的时候图省事,在各个模块都引用的基础module中src/test/java中建立了一个BaseTest, package net.c…
我们有很多种方法评估一个方法的执行耗时,比如使用性能分析工具,使用基准性能测试.不过传统的在代码中编写计时的方式依然有效,因为它可以生产环境或用户端得到真实环境下的执行耗时. 如果你希望在 .NET/C# 代码中编写计时,那么阅读本文可以获得一些建议.阅读本文也可以了解到 QueryPerformanceCounter.Get­System­Time­As­File­Time 等方法的差异. 本文内容 基本的计时 结论:使用什么方法计时 各种计时 API 及其比较 基于系统性能计数器(QPC)的…
一次在开发中,key的值用了 byte型,结果插入第一条正常,第二条开始就出错,原因是用byte类型无法实现自动增加1,所以为了方便,建议使用 int型. public virtual byte bkAutoID { get; set; } 若是一定要用小型数据类型,则需要在Key中加入自增控制语句,如下: [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)] public virtual byte bkAutoID { get;…
一.作用 v-if 指令用于条件性地渲染一块内容.这块内容只会在指令的表达式返回 true值的时候被渲染 v-for 指令基于一个数组来渲染一个列表.v-for 指令需要使用 item in items 形式的特殊语法,其中 items 是源数据数组或者对象,而 item 则是被迭代的数组元素的别名 在 v-for 的时候,建议设置key值,并且保证每个key值是独一无二的,这便于diff算法进行优化 两者在用法上 1 <Modal v-if="isShow" /> 2 3…
尽量减少对变量的重复计算 如 for(int i=0;i<list.size();i++) 应该改为 for(int i=0,len=list.size();i<len;i++) 并且在循环中应该避免使用复杂的表达式,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快. 尽量使用移位来代替'a/b'的操作 "/"是一个代价很高的操作,使用移位的操作将会更快和更有效 如 int num = a / 4; int num = a /…
1.Dao 数据访问对象 此对象用于访问数据库.实现类一般用于用于操作数据库! 一般操作修改,添加,删除数据库操作的步骤很相似,就写了一个公共类DAO类 ,修改,添加,删除数据库操作时 直接调用公共类DAO类!即是在一个类中,用来Dao来操作数据库. 2.POJO普通Java对象 全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO. 即是:声明…
switch if - else只适合在3层之内使用 当条件判断较多时,可以首先考虑使用switch interface 当判断条件还可能动态增加时,可以考虑将switch进一步优化,引入接口interface,将代码与数据分离: 创建一个map: key: switch的case值 value: 对应的实体类 抽象出通用方法,变成一个接口,统一入参和返回值 主实现类controller类就是将type值传进去,获取到对应的实现类,然后调用抽象出来的方法,这样无论增加多少个case, 都不会改变…
在某些框架或者高手写的代码中,我们会发现有不少人喜欢在进行条件判断的时候将常量写在前面,比如: if(1 == $a){ echo 111; } 这样做有什么好处呢?我们假设一个不小心的粗心大意,少写了一个=号,会有什么结果. $a = 'a'; if($a = 'b'){ echo 111; } echo $a; 没错,111输出了,$a的值也变成了b.少了一个等号,就变成了赋值操作,这样的操作会先给$a赋值,然后根据$a的值进行判断.如果$a = '',就不会输出111,但是$a的值还是会变…
在孙宇老师讲得Easyui第10讲完后,基本的增删该查做出来了,但是编辑存在一个问题:行内样式编辑修改,如果当用户没有修改数据,孙宇老师讲得时候直接return,这样做是不合理的:第二次再使用右键编辑时就是用不了右键编辑功能了:因此我将代码修改如下: if (inserted.length < 1 && updated.length < 1) { editRow = undefined; //回滚 $admin_user_dategrid.datagrid('rejectCha…
多表连查时,如果存在多个唯一键可以做关联,尽可能选择有意义的code或name,能不选择无意义的id或者uuid最好! 所以在存储的时候也是这样,并且从始至终保持一致性.这样既降低了维护和阅读的难度,同时降低了查询的难度(可能减少连表的个数).…
场景描述 线上mysql数据库里面有张表保存有每天的统计结果,每天有1千多万条,这是我们意想不到的,统计结果咋有这么多.运维找过来,磁盘占了200G,最后问了运营,可以只保留最近3天的,前面的数据,只能删了.删,怎么删? 因为这是线上数据库,里面存放有很多其它数据表,如果直接删除这张表的数据,肯定不行,可能会对其它表有影响.尝试每次只删除一天的数据,还是卡顿的厉害,没办法,写个Python脚本批量删除吧. 具体思路是: 每次只删除一天的数据: 删除一天的数据,每次删除50000条: 一天的数据删…
原文收录在我的 GitHub博客 (https://github.com/jawil/blog) ,喜欢的可以关注最新动态,大家一起多交流学习,共同进步,以学习者的身份写博客,记录点滴. 按照格式推荐好用的插件有福利哦,说不定会送1024论坛邀请码,好自为之,你懂的,嘿嘿嘿. 由于github的issues没有TOC菜单栏导航,所以这里方便大家查看,先安利一款Chrome浏览器的插件,感谢github用户@BBcaptain 推荐.点击我呀,进入商店,自备梯子,如果不会FQ,赶紧转行... 效果…
在Java中返回值定义为int类型的 方法return 1:中返回的是Integer值,在返回的时候基本类型值1被封装为Integer类型. 定义一个Test类,在异常处理try中和finally中分别return : public class Test { public static void main(String[] args) { System.out.println(new Test().test()); } int test() { try { return func1(); }fi…
原文收录在 GitHub博客 ( https://github.com/jawil/blog ) ,喜欢的可以关注最新动态,大家一起多交流学习,共同进步,以学习者的身份写博客,记录点滴. 由于github的issues没有TOC菜单栏导航,所以这里方便大家查看,先安利一款Chrome浏览器的插件,感谢github用户@BBcaptain 推荐.点击我呀,进入商店,自备梯子,如果不会翻墙,赶紧转行... 效果预览,是不是很方便,图片较多,建议等待一会或者多刷新几下: Echo.js – 简单易用的…
package com.shawnway.trade.marketdata.constants; import java.sql.SQLException; import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask; import javax.persistence.EntityManager; import javax.persistence.Pers…
//在窗口关闭或隐藏时,清楚文本框中的内容(核心代码) function(s, e) { ASPxClientEdit.ClearGroup('entryGroup'); } <asp:Content ID="Content1" ContentPlaceHolderID="ContentHolder" runat="Server"> <script type="text/javascript"> //…
前言:在网易新闻的练习中遇到了这个错误 注意:练习中遇到了如图的bug,主要是因为用storyboard布局 600 * 600   显示的时候要经过自动布局,缩小到相应手机的屏幕大小.也就是有的尺寸要进行缩放.练习中自己取出的view是显示出来的尺寸375,而从storyboard中显示出来是在600的尺寸.系统会自动布局适应屏幕大小,600压缩到375,相应的里面的子控件也会从375压缩的更小.就出现了如图所示. 解决办法:用一个storyboard中控件的尺寸…
课时3 解决Struts 2配置文件无提示问题(eclipse):window→preference→XML→XML Catlog…
结构是一种用关键字struct声明的自定义数据类型.与类相似,也可以包含构造函数,常数,字段,方法,属性,索引器,运算符和嵌套类型等,不过,结构是值类型. 1.结构的构造函数和类的构造函数不同. a.结构不能包含显式的无参数构造函数.结构成员将自动初始化为它们的默认值. b.结构不能包含以下形式的初始值设定类:base(argument-list): 2.对于结构中的实例字段成员,不能在声明时赋值初始化. 3.声明了结构类型后,可以使用new运算符创建构造对象,也可以不使用new关键字.如果不使…
使用sys.excepthook函数进行全局异常的获取. 1. 使用MessageDialog实现异常显示: 2. 使用logger把捕获的异常信息输出到日志中: 步骤:定义异常处理函数, 并使用该函来替换掉系统的内置处理函数: 对于threading.py的异常捕获,需要对该文件进行一些改变: 如下: try: self.run() except SystemExit: if __debug__: self._note("%s.__bootstrap(): raised SystemExit&…