Others
清华大学计算机系网络课程
清华大学计算机系网络课程 , 不错的网络课程。感觉自己好些方面都差很多,要好好读书了。
http://www.ycrc.com.cn/qinghua/
MatLab坐标的绘制(ZT)
http://nudtlxw.blogcn.com/diary,108244939.shtml
1.基本绘图函数 函数名功能描述 Plot绘制二维线性图形及两个坐标轴 Plot3绘制三维图形及三个坐标轴 Loglog绘制对数图形及两个坐标轴(两个轴都为对数坐标) Semilogx半对数坐标图形(X维对数坐标,Y维线性坐标) Semilogy半对数坐标(与上面相反) 如:plot(y);%y为矢量,x将为索引值绘制图像,y为m×n矩阵X为索引号1:m,绘制n各图形 plot(x,y); plot(x,sin(x),x,sin(x+1),x,cos(x+2)); plot(t,y,’- … … … … 阅读更多
Matlab几个绘图技巧,坐标轴翻转等
Matlab几个绘图技巧,坐标轴翻转等
//
document.body.oncopy = function() {
[...]
vim中大小写转换
有很多方法. 最简单的是: :s/old/new/g, 但是,这仅对当前行起作用…, 所以,我们用 :%s/old/new/g, 更一般的,我们还可以用 :[范围]s/old/new/[cg],这里,[范围]是任意的行范围,包括行号,$(文件末尾),.(当前行) %(当前文件),或者两个行号之间加个破折号(或者可以这样: .,+5,这表示下面5行).[cgi]是 c,g,i中间的一个或者什么也没有.c告诉vi每次替换的时候要给提示,g是说对所有一行中出? 的地方都做替换.i则是指在查找时不区分大小写.如果最后一个斜杠(/)后面没有东西的话,? 么vi只替换在行中第一次匹配的地方. … … … … 阅读更多
多线程编程之四——线程的同步
多线程编程之四–线程的同步八、线程的同步
虽然多线程能给我们带来好处,但是也有不少问题需要解决。例如,对于像磁盘驱动器这样独占性系统资源,由于线程可以执行进程的任何代码段,且线程的运 行是由系统调度自动完成的,具有一定的不确定性,因此就有可能出现两个线程同时对磁盘驱动器进行操作,从而出现操作错误;又例如,对于银行系统的计算机来 说,可能使用一个线程来更新其用户数据库,而用另外一个线程来读取数据库以响应储户的需要,极有可能读数据库的线程读取的是未完全更新的数据库,因为可能 在读的时候只有一部分数据被更新过。
使隶属于同一进程的各线程协调一致地工作称为线程的同步。MFC提供了多种同 … … … … 阅读更多
多线程编程之三——线程间通讯
多线程编程之三–线程间通讯
七、线程间通讯
一般而言,应用程序中的一个次要线程总是为主线程执行特定的任务,这样,主线程和次要线程间必定有一个信息传递的渠道,也就是主线程和次要线程间要进行通信。这种线程间的通信不但是难以避免的,而且在多线程编程中也是复杂和频繁的,下面将进行说明。使用全局变量进行通信
由于属于同一个进程的各个线程共享操作系统分配该进程的资源,故解决线程间通信最简单的一种方法是使用全局变量。对于标准类型的全局变量,我们建议使用volatile 修饰符,它告诉编译器无需对该变量作任何的优化,即无需将它放到一个寄存器中,并且该值可被外部改变。如果线程间所需传递的信息较复 … … … … 阅读更多
多线程编程之二——MFC中的多线程开发
多线程编程之二–MFC中的多线程开发
五、MFC对多线程编程的支持
MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外 的用户输入,响应用户及系统所产生的事件和消息等。但对于Win32的API编程而言,这两种线程是没有区别的,它们都只需线程的启动地址即可启动线程来 执行任务。在MFC中,一般用全局函数AfxBeginThread()来创建并初始化一个线 … … … … 阅读更多
VC6.0多线程编程 (1)
由于编写的界面有进度条,在下载程序的时候,界面会变形,所以要用到多线程。现在复习一下多线程的知识。下面的文章为转载。
VC6.0多线程编程 (1)一、问题的提出
编写一个耗时的单线程程序:
新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为”延时6秒”,添加按钮的响应函数,代码如下:void CSingleThreadDlg::OnSleepSixSecond(){Sleep(6000); //延时6秒}编译并运行应用程序,单击” … … … … 阅读更多
