首页 > 编程语言
1.10 双线程高效下载
(一)题目         网络上下载数据,然后存储到硬盘上。简单做法是:先下载一块然后写到硬盘,然后再下载,再写到硬盘上。         缺点:需要先下载完才能写入硬盘,下载和写是串行操作。         改进:让两个线程并行进行,设置缓冲区,采用信号量的形式。                     下载线程,只要缓冲区有空余就下载,下载完成之后告诉写线程缓冲区有数...
分类:编程语言   时间:2014-10-09 15:02:09    收藏:0  评论:0  赞:0  阅读:62
【ThinkingInC++】70、防御性编程
第二章 防御性编程 猜字游戏 /** * 书本:【ThinkingInC++】 * 功能:实现一个猜谜的游戏 * 时间:2014年10月8日21:54:44 * 作者:cutter_point */ #include #include #include using namespace std; int main() { cout<<"自己想出来一个数字,在1到100之间的,...
分类:编程语言   时间:2014-10-09 15:01:29    收藏:0  评论:0  赞:0  阅读:99
Java 实现桥接(Bridge)模式
/** * 手机壳、套 * @author stone * */ public abstract class BaseCellphoneShell { public abstract void mapping();//对应匹配哪种手机 }/** * 手机,桥接了 手机壳BaseCellphoneShell * @author stone */ public abstract cla...
分类:编程语言   时间:2014-10-09 14:59:29    收藏:0  评论:0  赞:0  阅读:62
Effective C++ 34
34.将文件间的编译依赖性降到最低。 对于一个大型程序,其结构是错综复杂的,当你对一个类进行一些改动时,修改的不是接口,而是类的实现,即只是一些细节部分,但重新生成程序时,所有用到这个类的的文件都要重新编译。这里题目指的是这个意思。但实际上,我在vs2012实践了一下,对于类B与类A相关联,类B的实现依赖于类A,若类A的实现发生了改变,并不会影响B,即生成时,编译器只会去重新编译A,而对于依赖于...
分类:编程语言   时间:2014-10-09 14:59:09    收藏:0  评论:0  赞:0  阅读:79
Effective C++ 29-33
29.避免返回内部数据的句柄。 即使声明一个类的对象为const,不能进行修改,在获得其数据的句柄也就是地址的情况下,还是可以强行修改的。 class A{ public: int n; A(int x):n(x){} operator int*() const; }; inline A::operator int*()const{ return const_cast(&n); }...
分类:编程语言   时间:2014-10-09 14:58:59    收藏:0  评论:0  赞:0  阅读:55
如何用Java编写一段代码引发内存泄露
通过以下步骤可以很容易产生内存泄露(程序代码不能访问到某些对象,但是它们仍然保存在内存中): 应用程序创建一个长时间运行的线程(或者使用线程池,会更快地发生内存泄露)。线程通过某个类加载器(可以自定义)加载一个类。该类分配了大块内存(比如new byte[1000000]),在某个静态变量存储一个强引用,然后在ThreadLocal中存储它自身的引用。分配额外的内存new byte[1000...
分类:编程语言   时间:2014-10-09 14:58:29    收藏:0  评论:0  赞:0  阅读:93
[4] spring mvc学习笔记
基于spring MVC的用户管理系统...
分类:编程语言   时间:2014-10-09 14:57:39    收藏:0  评论:0  赞:0  阅读:262
linux下C语言实现求CPU利用率
第一节   祸起 本来就是想通过写个小程序测试CPU利用率从而可以检验其他的工具性能之类的数据,后来参照IPbench中的cpu_target_lukem插件实现我们的功能,原理很简单:就是我们给程序设置了极低的优先级,如果有任何计算任务都会打断它,而如果没有计算任务,我们的程序就会占用cpu时间,所以我们的程序的运行时间基本上可以算作CPU的闲暇时间。 所以我们计算总的CPU利用率的方法就是...
分类:编程语言   时间:2014-10-09 14:56:49    收藏:0  评论:0  赞:0  阅读:192
Boost.Asio c++ 网络编程翻译(11)
*_at方法 这些方法在一个流上面做随机存取操作。你来指定read和write操作从什么地方开始(offset)...
分类:编程语言   时间:2014-10-09 14:56:19    收藏:0  评论:0  赞:0  阅读:139
深入C++ new/delete,malloc/free解析
深入C++ new/delete,malloc/free解析 1.malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存 2.对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由malloc/free是库函数而不是运算符,不在编...
分类:编程语言   时间:2014-10-09 14:53:59    收藏:0  评论:0  赞:0  阅读:81
Python下pip pydoc 2to3等工具
python自带库安装工具pip,手册工具pydoc,脚本版本转换工具2to3,十分强大...
分类:编程语言   时间:2014-10-09 14:53:49    收藏:0  评论:0  赞:0  阅读:93
Python学习笔记5:函数参数详解
一、函数的定义格式: def 函数名(参数列表):     函数体 def fun1(a, b, c): return a + b + c 二、位置传递:位置对应 print(fun1(3 ,2 ,1)) 输出: 6 三、关键字传递:位置参数要出现在关键字参数之前 print(fun1(3 ,c = 1, b = 2)) 输出: 6 四、参数默认值:可以给...
分类:编程语言   时间:2014-10-09 14:53:29    收藏:0  评论:0  赞:0  阅读:67
多线程互斥--mutex(二)
不知道大家对多线程或多进程间的同步互斥的控制机制了解的怎么样,其实有很多种方法可以实现这个目的,但是这些方法其实由4种最基本的方法实现。这4种最基本的方法具体定义如下:在这有讲得不对的地方欢迎各位扔砖,希望不会误导大家。          1、临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。                  2、互斥量:为协调共同对一个共享资源...
分类:编程语言   时间:2014-10-09 14:52:29    收藏:0  评论:0  赞:0  阅读:187
每天一点儿Java--ComboBox
import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*; import java.util.*; import java.text.SimpleDateFormat; /** * Title: ComboBox下拉域演示 * Description: 通过选择或这...
分类:编程语言   时间:2014-10-09 14:52:09    收藏:0  评论:0  赞:0  阅读:67
java HTML字符串正则表达式使用工具类
java HTML字符串正则表达式使用工具类 代码下载地址:http://www.zuidaima.com/share/1550463453416448.htm...
分类:编程语言   时间:2014-10-09 14:51:49    收藏:0  评论:0  赞:0  阅读:109
使用具有权威说服力的实例辨明C++中的malloc与new
使用具有权威说服力的实例辨明C++中的malloc与new   问题:    很多人都知道malloc与new都是用来申请空间用的,开辟空间来源于堆中。但是在C++中却很少用malloc去申请空间,为什么会这样? 下面小编会以一个很有说服力的例子来说明,相信大家一看就能明白。 C++程序的格局可分为4个区,注意是“格局”, 1、全局数据区     //其中...
分类:编程语言   时间:2014-10-09 14:49:19    收藏:0  评论:0  赞:0  阅读:69
Effective JavaScript Item 35 使用闭包来保存私有数据
本系列作为EffectiveJavaScript的读书笔记。   JavaScript的对象系统从其语法上而言并不鼓励使用信息隐藏(Information Hiding)。因为当使用诸如this.name,this.passwordHash的时候,这些属性默认的访问级别就是public的,在任何位置都能够通过obj.name,obj.passwordHash来对这些属性进行访问。   在E...
分类:编程语言   时间:2014-10-09 14:47:59    收藏:0  评论:0  赞:0  阅读:177
Java中对文件重命名
File file = new File("D:\\aa\a.txt");     file.renameTo(new File("D:\\aa\\b.txt"));...
分类:编程语言   时间:2014-10-09 14:46:39    收藏:0  评论:0  赞:0  阅读:73
Swift 表视图动画教程: Drop-In Cards
http://www.raywenderlich.com/76024/swift-table-view-animations-tutorial-drop-cards标准 table view 是一个强大而又灵活的数据呈现方式;大部分情况下你的app 都使用了某种形式的 table view。但是,它有一个缺点就是,无法进行太多的定制,你的 app 会淹没在成千上万的类似是 app 中。为了不使用千...
分类:编程语言   时间:2014-10-09 14:45:21    收藏:0  评论:0  赞:0  阅读:182
管理线程之创建线程
在看《Cplusplus Concurrency in Action Practical Multithreading》。记录一下学习过程,这是第二章创建线程部分。...
分类:编程语言   时间:2014-10-09 14:40:59    收藏:0  评论:0  赞:0  阅读:121
© 2014 bubuko.com 版权所有 鲁ICP备09046678号-4
打开技术之扣,分享程序人生!
             

鲁公网安备 37021202000002号