生产者:不停地往队列中放数据
消费者:不停地从队列中拿数据
两者通过两个信号量同步
当生产者不再生产数据时,消费者正好挂在一个信号量上,处于睡眠状态,这时候pthread_join也会一直挂着的。该怎样使得消费者正常退出呢?
我的做法是让生产者在往队列中放一个【结束数据】,也就是一个标识,消费者拿到数据后,如果这个数据是结束标识则自杀退出。...
分类:
编程语言 时间:
2014-06-25 00:07:17
阅读次数:
225
IndexWriter
Hibernate的SessionFactory
在Hibernate中,一般保持一个数据库就只有一个SessionFactory。因为在SessionFactory中维护二级缓存,而SessionFactory又是线程安全的。所以SessionFactory是共享的。
lucene的IndexWriter
如果同时在一个索引库中同时建立两个In...
分类:
其他好文 时间:
2014-06-24 23:42:32
阅读次数:
364
Description
Input
第一行为N(0
Output
从小到大输出可见直线的编号,两两中间用空格隔开,最后一个数字后面也必须有个空格
Sample Input
3
-1 0
1 0
0 0
Sample Output
1 2
HINT
Source
这个题其实和计算几何没太大关系,需要用单调栈维护可以被看见的直线...
分类:
其他好文 时间:
2014-06-24 23:22:16
阅读次数:
279
题意:
给定n,AA
下面n个数m1,m2···mn
则有n条方程
res % m1 = m1-AA
res % m2 = m2-AA
问res的最小值
直接上剩余定理,嘿嘿
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define ll ...
分类:
其他好文 时间:
2014-06-24 22:32:50
阅读次数:
315
题目链接:http://poj.org/problem?id=2155
题目大意:给出一个N*N的0矩阵,下面给出两种指令:1. 给出的第一个数据为‘C’,再给出四个整形数据,x1,y1,y1,y2,对以(x1,y1)(x2,y2)分别为左上角和右下角坐标的矩阵内的元素进行反转(0变1,1变0) 2. 给出的第一个数据为‘Q’,再给出两个数据,x,y,然后输出此时这个坐标上的元素...
分类:
其他好文 时间:
2014-06-24 22:29:35
阅读次数:
271
hdu 3037 Saving Beans
题目大意:n个数,和不大于m的情况,结果模掉p,p保证为素数。
解题思路:隔板法,C(nn+m)多选的一块保证了n个数的和小于等于m。但是n,m很大,所以用到Lucas定理。
#include
#include
#include
using namespace std;
typedef long long ll;
ll n, m,...
分类:
其他好文 时间:
2014-06-24 21:07:40
阅读次数:
220
做了一下午,总算做出来了!!
思路:将R转换成整数,同时计算好小数的个数,计算整数的次幂之后,然后根据规律将小数点适当的时候输出(如有3位实际小数,则应在第36位输出小数点)
链接http://acm.nyist.net/JudgeOnline/problem.php?pid=155
代码:
#include
#include
int main()
{
int i, j, n, do...
分类:
其他好文 时间:
2014-06-24 21:01:10
阅读次数:
164
Treasure Hunt
大意:在一个矩形区域内,有n条线段,线段的端点是在矩形边上的,有一个特殊点,问从这个点到矩形边的最少经过的线段条数最少的书目,穿越只能在中点穿越。
思路:需要巧妙的转换一下这个问题,因为从一个点到终点不可能“绕过”围墙,只能穿过去,所以门是否开在中点是无所谓的,只要求四周线段中点到终点的线段与墙的最少交点个数即可。更进一步,实际上,只需判断四周围...
分类:
其他好文 时间:
2014-06-24 19:44:38
阅读次数:
196
增强的for循环(也称为foreach循环):不用下标变量,顺序的访问整个数组。不能以其他顺序访问数组,或者改变数组的元素。
for(elementType element: arrayRefVar){}
emement必须声明为与数组中元素相同的数据类型
增强for循环只能用在数组和实现Iterator接口的集合类(Collection以及其子类(hashmap,linklist,...
分类:
其他好文 时间:
2014-06-24 18:31:34
阅读次数:
182
泛化允许你定义一个宽松、可重用的函数或类型,泛化也能避免代码的重复,能以更清楚和抽象的方式来表达意图。
泛化是Swift语言提供的强大功能之一,Swift提供的许多标准库都使用泛化来创建,如Swift提供的数组和词典类型。通过使用泛化,你能使用一个数组和词典来包含和存储任何类型的元素。
1.1 泛化函数
使用Swift语言你能定义一...
分类:
移动开发 时间:
2014-06-24 15:31:55
阅读次数:
364