线程属性属性值不能直接设置,须使用相关函数进行操作
初始化函数为pthread_attr_init,该函数必须在pthread_create函数之前调用typedef struct{
int detachstate; // 线程的分离状态
int scope; // 线程绑定状态
int schedpolicy; // 线程调度策略
struct sc...
分类:
编程语言 时间:
2015-05-16 10:35:55
阅读次数:
167
线程互斥机制Mutex变量就像一把“锁”,是线程同步和保护共享数据的主要方式
Mutex可以用来阻止竞争
Pthreads中Mutex的基本概念
在任何时候,只有一个线程能够获得Mutex
尽管几个线程想获取一个Mutex,但是只有一个线程能够成功
其他线程需要等待,直到获取Mutex的线程放弃Mutex
线程必须轮流访问需要保护的数据
线程经常利用mutex来加锁需要更新的全局变量,...
分类:
编程语言 时间:
2015-05-16 10:35:41
阅读次数:
253
在Java中,它的内存管理包括两方面:内存分配(创建Java对象的时候)和内存回收,这两方面工作都是由JVM自动完成的,降低了Java程序员的学习难度,避免了像C/C++直接操作内存的危险。但是,也正因为内存管理完全由JVM负责,所以也使Java很多程序员不再关心内存分配,导致很多程序低效,耗内存。因此就有了Java程序员到最后应该去了解JVM,才能写出更高效,充分利用有限的内存的程序。
1...
分类:
编程语言 时间:
2015-05-16 10:31:36
阅读次数:
214
在实际编程中,要尽量避免死锁情况的出现,但是有些面试中故意让你写一个死锁的程序,这似乎也不太简单(有些公司会出这样的面试题),下面讲解一个简单的死锁例子。
代码说明:
第一步:
当DeadLock的线程对象td1的属性flag为1时,第一个线程先锁定资源O1,睡眠500毫秒,然后尝试锁定资源O2(假如没有被锁定的话);
第二步:而第一个线程在睡眠的时候,第二个线程对象td2启动了,其属性f...
分类:
编程语言 时间:
2015-05-16 10:31:27
阅读次数:
138
index ID NAME AGE 1 John 27 2 Lucy 27 3 Dan 26 4 Ben 30
分类:
编程语言 时间:
2015-05-16 10:28:50
阅读次数:
124
#include #include #include #include /* * EOF: 符号常量,其值为-1. * fgets() 最多读取int-1个字符,遇换行或EOF即返回. * fputs() 写文件时,忽略字符串截止符'\0'. * fread()和fwrite() 数据块读写,多用于...
分类:
编程语言 时间:
2015-05-16 10:28:04
阅读次数:
173
1.项目的搭建 1.1 创建文件 1.1.1 删除模板文件 --> viewController.Swift, main.storyBoard 1.1.2 创建项目结构, 主目录 Classess --> 二级目录Module(功能模块), Model(业务模型), Tools(工具)...
分类:
编程语言 时间:
2015-05-16 10:20:20
阅读次数:
172
回调函数就是通过一个函数指针调用的函数,如果把函数的指针作为实参传给另外一个一个函数,当这个指针被用来调用它指向的函数时,这个过程就是回调。
c语言中的函数原型如下:void method();
对应的函数指针声明:void (*)(),如果给该函数指针取一个变量名称p,则p指向这个函数的,可以声明为 void (*p)(),该函数指针无参数,返回值为void类型。...
分类:
编程语言 时间:
2015-05-16 09:13:20
阅读次数:
156
Matrix
Time Limit: 3000MS
Memory Limit: 65536K
Total Submissions: 20303
Accepted: 7580
Description
Given an N*N matrix A, whose elements are either 0 or 1. A[i, j] me...
分类:
编程语言 时间:
2015-05-16 09:11:24
阅读次数:
166
软件: MatlabR2014a CodeBlock
1.新建个工程
2.输入程序,求得坐标并保存到txt文件中
3.用MATLAB建个M文件
4.输入绘图代码,如图
5.点击运行,M文件保存在新建工程所在的文件夹下
6.绘图完成
7.如果想把图像以其他格式保存,则点击文件->另存为,选择保存类型...
分类:
编程语言 时间:
2015-05-16 09:11:35
阅读次数:
255
// c++格式控制输出简单应用
// 九九乘法表对齐
#include
#include
using namespace std;
int main()
{
for (int i = 1; i < 10; i++)
{
for (int j = 1; j <= i; j++)
{
//cout << i << "*" << j << "=" << i*j<<'\t';
...
分类:
编程语言 时间:
2015-05-16 09:10:49
阅读次数:
134
Unity3D Compute Shader 新解体绘制技术与吸收【三】1.Compute Shader是一个DX11的大特点,显然它真的开放了GPU的运算
2.Compute Shader的价值也是非常大的,在科学、工程、医学、各种应用上显而易见
3.GPU的浮点运算和精度比CPU高几个数量级,而且GPU的并行运算的结构、指令不会冗长的等待这几天听了恩雅的 "Waters Show The H...
分类:
编程语言 时间:
2015-05-16 09:09:17
阅读次数:
390
终结方法(finalizer)通常是不可预测的,也是很危险的,一般情况下是不必要的。使用终结方法会导致行为不稳定、降低性能,以及可移植性问题。
在Java中完成这样的工作主要是依靠try-finally机制来协助完成的,然而Java中还提供了另外一种被称为finalizer的机制,使用者仅仅需要重载Object对象提供的finalize方法,这样当JVM的在进行垃圾回收时,就可以自动...
分类:
编程语言 时间:
2015-05-16 09:08:59
阅读次数:
123
spring和springMVC之间的整合,springMVC中的jar包包含spring中的jar包,所以无需再另外导入jar包,只需导入springMVC的jar包即可。
如图一所示:
这个时候,再新建两个源文件夹,一个为config专门放配置文件,另外一个为test,专门用来放进行测试的程序,在这个整合的小项目中,本身
并没有用上test源文件夹,但是加上倒也不错。
现在,在co...
分类:
编程语言 时间:
2015-05-16 09:07:31
阅读次数:
261
Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数据类型对应的类统称为包装类(Wrapper Class),有些地方也翻译为外覆类或数据类型类。
包装类均位于java.lang包,包装类和基本数据类型的对应关系如下表所示:
...
分类:
编程语言 时间:
2015-05-16 09:08:59
阅读次数:
108
1.系统相关类 Java提供了System类和Runtime类来与程序运行的平台进行交互A.System类代表当前Java程序的运行平台 a. System类是一个final类,该类的所有属性和方法都是静态的。可以不创建对象直接调用 b.属性:in 、out 、err c.常用方法: current...
分类:
编程语言 时间:
2015-05-16 09:05:17
阅读次数:
129
需要避免的与多任务处理有关的特殊错误类型是死锁(deadlock)。死锁发生在当两个线程对一对同步对象有循环依赖关系时。例如,假定一个线程进入了对象X的管程而另一个线程进入了对象Y的管程。如果X的线程试图调用Y的同步方法,它将像预料的一样被锁定。而Y的线程同样希望调用X的一些同步方法,线程永远等待,...
分类:
编程语言 时间:
2015-05-16 09:03:30
阅读次数:
129