摘要: Given an unsorted array of integers, find the length of the longest consecutive elements sequence. For example,Given[100, 4, 200, 1, 3, 2],The longest 阅读全文
posted @ 2017-06-12 23:06 鸭子船长 阅读(1729) 评论(0) 推荐(0)
摘要: Given a binary tree containing digits from0-9only, each root-to-leaf path could represent a number. An example is the root-to-leaf path1->2->3which re 阅读全文
posted @ 2017-06-12 22:36 鸭子船长 阅读(244) 评论(0) 推荐(0)
摘要: 前面三讲《C++11 并发指南二(std::thread 详解)》,《C++11 并发指南三(std::mutex 详解)》分别介绍了 std::thread,std::mutex,std::future 等相关内容,相信读者对 C++11 中的多线程编程有了一个最基本的认识,本文将介绍 C++11 阅读全文
posted @ 2017-06-12 17:46 鸭子船长 阅读(325) 评论(0) 推荐(0)
摘要: 上一讲《C++11 并发指南四(<future> 详解二 std::packaged_task 介绍)》主要介绍了 <future> 头文件中的 std::packaged_task 类,本文主要介绍 std::future,std::shared_future 以及 std::future_err 阅读全文
posted @ 2017-06-12 17:20 鸭子船长 阅读(400) 评论(0) 推荐(0)
摘要: 前面两讲《C++11 并发指南二(std::thread 详解)》,《C++11 并发指南三(std::mutex 详解)》分别介绍了 std::thread 和 std::mutex,相信读者对 C++11 中的多线程编程有了一个最基本的认识,本文将介绍 C++11 标准中 <future> 头文 阅读全文
posted @ 2017-06-12 17:10 鸭子船长 阅读(272) 评论(0) 推荐(0)
摘要: 转自:http://www.cnblogs.com/haippy/p/3237213.html 上一篇《C++11 并发指南二(std::thread 详解)》中主要讲到了 std::thread 的一些用法,并给出了两个小例子,本文将介绍 std::mutex 的用法。 Mutex 又称互斥量,C 阅读全文
posted @ 2017-06-12 16:56 鸭子船长 阅读(591) 评论(0) 推荐(0)
摘要: 上一篇博客《C++11 并发指南一(C++11 多线程初探)》中只是提到了 std::thread 的基本用法,并给出了一个最简单的例子,本文将稍微详细地介绍 std::thread 的用法。 std::thread 在 <thread> 头文件中声明,因此使用 std::thread 时需要包含 阅读全文
posted @ 2017-06-12 16:45 鸭子船长 阅读(737) 评论(0) 推荐(0)
摘要: 在Java 中定义了关键字final,被final修饰的类不能被继承。 首先想到的是在C++中,子类的构造函数会自动调用父类的构造函数。同样,子类的析构函数也会自动调用父类的析构函数。要想一个类不能被继承,只要把它的构造函数和析构函数都定义为私有函数。那么当一个类试图从它那继承的时候,必然会由于试图 阅读全文
posted @ 2017-06-12 16:40 鸭子船长 阅读(245) 评论(0) 推荐(0)
摘要: 本系列文章主要介绍 C++11 并发编程,计划分为 9 章介绍 C++11 的并发和多线程编程,分别如下: C++11 并发指南一(C++11 多线程初探)(本章计划 1-2 篇,已完成 1 篇) C++11 并发指南二(std::thread 详解)(本章计划 1-2 篇,已完成 1 篇) C++ 阅读全文
posted @ 2017-06-12 15:41 鸭子船长 阅读(313) 评论(0) 推荐(0)
摘要: 引言 C++11 自2011年发布以来已经快两年了,之前一直没怎么关注,直到最近几个月才看了一些 C++11 的新特性,今后几篇博客我都会写一些关于 C++11 的特性,算是记录一下自己学到的东西吧,和大家共勉。 相信 Linux 程序员都用过 Pthread, 但有了 C++11 的 std::t 阅读全文
posted @ 2017-06-12 15:40 鸭子船长 阅读(296) 评论(0) 推荐(0)
摘要: 生产者消费者问题是多线程并发中一个非常经典的问题,相信学过操作系统课程的同学都清楚这个问题的根源。本文将就四种情况分析并介绍生产者和消费者问题,它们分别是:单生产者-单消费者模型,单生产者-多消费者模型,多生产者-单消费者模型,多生产者-多消费者模型,我会给出四种情况下的 C++11 并发解决方案, 阅读全文
posted @ 2017-06-12 15:29 鸭子船长 阅读(1188) 评论(0) 推荐(0)
摘要: Given a 2D board containing 'X' and 'O', capture all regions surrounded by 'X'. A region is captured by flipping all 'O's into 'X's in that surrounded 阅读全文
posted @ 2017-06-12 14:51 鸭子船长 阅读(313) 评论(0) 推荐(0)
摘要: 所谓的原子操作,取的就是“原子是最小的、不可分割的最小个体”的意义,它表示在多个线程访问同一个全局资源的时候,能够确保所有其他的线程都不在同一时间内访问相同的资源。也就是他确保了在同一时刻只有唯一的线程对这个资源进行访问。这有点类似互斥对象对共享资源的访问的保护,但是原子操作更加接近底层,因而效率更 阅读全文
posted @ 2017-06-12 10:30 鸭子船长 阅读(469) 评论(0) 推荐(0)
摘要: 一. 引子 最近想自己写个简单的 WEB SERVER ,为了先练练手,熟悉下在LINUX系统使用基本的进程、线程、互斥等,就拿以前学过的 OS 问题开开刀啦。记得当年学读者写者问题,尤其是写者优先的时候,那是真心纠结啊。刚才还觉得理解了,过一会儿又糊涂了。现在重新再看,还是容易纠结。没办法,用得少 阅读全文
posted @ 2017-06-12 00:19 鸭子船长 阅读(1777) 评论(1) 推荐(0)
摘要: 一.概念性问答题 第一题:线程的基本概念、线程的基本状态及状态之间的关系? 线程:一个线程是进程的一个顺序执行流。同类的多个线程共享一块内存空间和一组系统资源,线程本身有一个供程序执行时的堆栈。线程在切换时负荷小,因此,线程也被称为轻负荷进程。一个进程中可以包含多个线程。 并发原理 多个线程或进程” 阅读全文
posted @ 2017-06-12 00:15 鸭子船长 阅读(448) 评论(0) 推荐(0)