Victo

我的网络笔记本,用于收藏和总结一些知识。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: :: :: 管理 ::

2014年10月31日

摘要: 在《多线程编程之数据访问互斥》一文中简单介绍了原子锁,这里再详细说一下原子锁的概念和用途。(1)简单数据操作 如果在一个多线程环境下对某个变量进行简单数学运算或者逻辑运算,那么就应该使用原子锁操作。因为,使用临界区、互斥量等线程互斥方式将涉及到很多操作系统调用和函数调用等,效率肯定不如原子操作... 阅读全文
posted @ 2014-10-31 10:55 VictoKu 阅读(8169) 评论(0) 推荐(0)

2014年10月30日

摘要: 前面两篇文章都讲述了Linux环境下的多线程编程基础知识,也附带了典型实例。本文主要比较一下Linux环境与Windows环境下的多线程编程区别。 看待技术问题要瞄准其本质,不管是WIN32、Linux还是VxWorks,其涉及到多线程的部分都是那些内容,无非就是线程控制和线程通信,它们的许多... 阅读全文
posted @ 2014-10-30 23:02 VictoKu 阅读(1213) 评论(0) 推荐(0)

摘要: 上一篇文章中主要讲解了Linux环境下多线程的基本概念和特性,本文将说明Linux环境下多线程的同步方式。 在《UNIX环境高级编程》第二版的“第11章 线程”中,提到了类UNIX系统中的三种基本的同步机制:互斥、读写锁、条件变量。下面分别针对这三种机制进行说明:一、线程互斥 互斥意味着具有... 阅读全文
posted @ 2014-10-30 18:09 VictoKu 阅读(1915) 评论(0) 推荐(0)

摘要: 一、Linux环境下的线程 相对于其他操作系统,Linux系统内核只提供了轻量级进程的支持,并未实现线程模型。Linux是一种“多进程单线程”的操作系统,Linux本身只有进程的概念,而其所谓的“线程”本质上在内核里仍然是进程。 进程是资源分配的单位,同一进程中的多个线程共享该进程的资源(如作为共享 阅读全文
posted @ 2014-10-30 16:22 VictoKu 阅读(23935) 评论(0) 推荐(0)

摘要: 在Windows环境下针对多线程同步与互斥操作的支持,主要包括四种方式:临界区(CriticalSection)、互斥对象(Mutex)、信号量(Semaphore)、事件对象(Event)。下面分别针对这四种方式作说明:(1)临界区(CriticalSection) 每个进程中访问临界资源的... 阅读全文
posted @ 2014-10-30 11:42 VictoKu 阅读(2007) 评论(0) 推荐(0)

摘要: 本文参考文章:多线程的那点事儿(之数据互斥) 在多线程存在的环境中,除了堆栈中的临时数据之外,所有的数据都是共享的。如果我们需要线程之间正确地运行,那么务必需要保证公共数据的执行和计算是正确的。简单一点说,就是保证数据在执行的时候必须是互斥的。否则,如果两个或者多个线程在同一时刻对数据进行了操作,... 阅读全文
posted @ 2014-10-30 10:53 VictoKu 阅读(1865) 评论(0) 推荐(0)

摘要: 一、什么是线程 线程(thread)是进程中某个单一顺序的控制流。也被称为轻量进程(lightweight processes)。计算机科学术语,指运行中的程序的调度单位。 一个标准的线程由线程ID,当前指令指针(PC),寄存器集合和堆栈组成。另外,线程是进程中的一个实体,是被系统独立调度和分派... 阅读全文
posted @ 2014-10-30 10:15 VictoKu 阅读(986) 评论(0) 推荐(1)

2014年10月29日

摘要: 在上一篇文章中介绍了并行计算的基础概念,也顺便介绍了OpenMP。 OpenMp提供了对于并行描述的高层抽象,降低了并行编程的难度和复杂度,这样程序员可以把更多的精力投入到并行算法本身,而非其具体实现细节。对基于数据分集的多线程程序设计,OpenMP是一个很好的选择。同时,使用OpenMP也提供了更 阅读全文
posted @ 2014-10-29 14:45 VictoKu 阅读(14751) 评论(0) 推荐(1)

摘要: 并行计算(Parallel Computing)是指同时使用多种计算资源解决计算问题的过程,是提高计算机系统计算速度和处理能力的一种有效手段。它的基本思想是用多个处理器来协同求解同一问题,即将被求解的问题分解成若干个部分,各部分均由一个独立的处理机来并行计算。并行计算系统既可以是专门设计的、含有多个 阅读全文
posted @ 2014-10-29 10:38 VictoKu 阅读(3044) 评论(0) 推荐(0)

2014年10月27日

摘要: 本文主要讲如何搭建Hibernate开发环境和简单实例。一、搭建开发测试环境1.1 下载Hibernate 从Hibernate官方网站上下载最新的Hibernate ORM,从Hibernate官方文档页面可以看到相应的最新帮助文档内容。 我下载了当前最新的Hibernate压缩包为hib... 阅读全文
posted @ 2014-10-27 12:04 VictoKu 阅读(305) 评论(0) 推荐(0)