Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

Caffe源码中各种依赖库的作用及简单使用

Caffe源码中各种依赖库的作用及简单使用

1.Boost库:它是一个可移植、跨平台,提供源代码的C++库,作为标准库的后备。在Caffe中用到的Boost头文件包括:(1)、shared_ptr.hpp:智能指针,使用它可以不需要考虑内存释放的问题;(2)、date_time/posix_time/posix_time.hpp:时间操作函数;(3)、python.hpp:C++/Python互操作;(4)、make_shared.hpp:make_shared工厂函数代替new操作符;(5)、py...
Linux下多线程编程互斥锁和条件变量的简单使用

Linux下多线程编程互斥锁和条件变量的简单使用

Linux下的多线程遵循POSIX线程接口,称为pthread。编写Linux下的多线程程序,需要使用头文件pthread.h,链接时需要使用库libpthread.a。线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器、一组寄存器和栈),但是它可与同属一个进程的其它的线程共享进程所拥有的全部资源。当多个任务可以并行执行时,可以为每个任务启动...
总结Lua使用中遇到的小问题

总结Lua使用中遇到的小问题

Lua可以被C/C++ 代码调用,反过来也可以调用C/C++的函数,这使得Lua被广泛应用。Lua由标准C编写而成,代码简洁优美,几乎在所有操作系统和平台上都可以编译,运行。Lua在目前解释型脚本引擎中,速度是最快的,这决定了Lua嵌入式脚本的最佳选择。文章列举lua使用中遇到的小问题,做个汇总。if判断lua把 nil 和false 视为“假”,其他都为“真”local变量声明local var1=1,va...
如何识别Java中的内存泄漏

如何识别Java中的内存泄漏

【编者按】作者Martin Gutenbrunner供职于Ruxit,拥有十年的Java Web应用程序架构和管理经验。近日,他在Dzone上撰文分享了Java内存泄漏识别相关经验,由OneAPM工程师翻译。以下为译文Java开发人员都知道,Java利用垃圾回收机制来自动保持应用程序内存的干净和健康。然而可能有人不知道的是,即使使用了垃圾回收机制,Java中仍然可能存在内存泄漏风险。如果你碰到下面的错误代码:java.lang.OutOfMemoryErr...
JavaScript基本类型及类型转换

JavaScript基本类型及类型转换

每种语言都有自己的基本类型,JavaScript也不例外。在JavaScript中有五大基本类型,分别是number,string,boolean,null,undefined。其他不属于这五种基本类型的都是对象,有时候null也h是对象的一种。 一、基本类型介绍 可以通过typeof来确定是哪种类型。 number包括基本的数字,Infinity,unInfinity,NaN。其中NaN比较特殊,在一个不能做运算的时候做了运算就会得到NaN的结果,...
Java反射机制浅析

Java反射机制浅析

概念 Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 Class类与java.lang.reflect类库一起对反射的概念进行了支持,该类库包含了Field、Method以及Constructor类(每个类都实现了Member接口)。这些类型的对象是由JVM在运行时创建的,用以表示未知类里对应...
Java反射技术详解

Java反射技术详解

反射:其实就是动态的从内存加载一个指定的类,并获取该类中的所有的内容。反射的好处:大大的增强了程序的扩展性。反射的基本步骤: 1. 获得Class对象,就是获取到指定的名称的字节码文件对象。 2. 实例化对象,获得类的属性、方法或构造函数。 3. 访问属性、调用方法、调用构造函数创建对象。一: 获取Class对象,有三种方式 : 1:通过每个对象都具备的方法getClass来获取。弊端:必须要创建该类对象,才可以调用getClass方法。 2:每...
Java中线程的生命周期

Java中线程的生命周期

首先简单的介绍一下线程:进程:正在运行中的程序。其实进程就是一个应用程序运行时的内存分配空间。线程:其实就是进程中的一条执行路径。进程负责的是应用程序的空间的标示。线程负责的是应用程序的执行顺序。线程的生命周期:一般来说线程状态有一下几种:①新建:创建线程对象。②就绪:start方法被调用,线程获得了执行资格,但还没有执行权。(随机性的原理:因为cpu的快速切换造成,哪个线程获取到了cpu的执行权,哪个线程就执行。)③运行:线程获得了CPU的执行权,此状态...
八大排序算法的 Python 实现

八大排序算法的 Python 实现

1、插入排序插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)。是稳定的排序方法。插入算法把要排序的数组分成两部分:第一部分包含了这个数组的所有元素,但将最后一个元素除外(让数组多一个空间才有插入的位置),而第二部分就只包含这一个元素(即待插入元素)。在第一部分排序完成后,再将这个最后元素插入到已排好序的第一部分中。def insert_sort(lists...
Java数据库编程之JDBC配置

Java数据库编程之JDBC配置

阅读目录前言JDBC设计JDBC配置小结前言 如今任何应用程序的开发几乎都离不开数据库,JDBC是为Java提供的一个平台无关的数据库标准API,它提供了一个通用的SQL(Structured Query Language)数据库存储机制,该机制为多数关系型DBMS提供统一接口。现在业界有很多优秀的ORM(Object Relational Mapping)框架,例如全自动化的Hibernate和半自动化的MyBatis。这些框架是对JDBC的进一步封装...
Python 开发者节省时间的 10 个方法

Python 开发者节省时间的 10 个方法

Python 是一个美丽的语言,可以激发用户对它的爱。所以如果你试图加入程序员行列,或者你有点厌倦C++,Perl,Java 和其他语言,我推荐你尝试Python.Python有很多吸引程序员的功能,它易学,面向对象,字节码编译,免费且开源。还有运行时检查。完整快速的支持,可以执行各种任务的扩展。高效的Python在这篇文章,我想强调一些 Python 可以节约时间并最大限度地提高生产力的方面。在做准备时,我咨询了几个 Pythonists,他们最节省时间...
Python 面向对象编程

Python 面向对象编程

Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。本章节我们将详细介绍Python的面向对象编程。 如果你以前没有接触过面向对象的编程语言,那你可能需要先了解一些面向对象语言的一些基本特征,在头脑里头形成一个基本的面向对象的概念,这样有助于你更容易的学习Python的面向对象编程。面向对象技术简介类(Class):用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。...
Facebook 是如何构建首个跨平台 React Native 应用的?

Facebook 是如何构建首个跨平台 React Native 应用的?

今年早些时候,我们发布了React Native for iOS。React Native 将开发者在 web 上所使用的 React — 拥有声明式的自包含组件以及快速的开发周期 — 带到了移动平台, 同时保留了原生应用程序的运行速度、保真度及外观。今天,我们很高兴地发布了React Native for Android。现在我们已经在 Facebook 的生产环境中使用 React Native 超过一年了。几乎就是一年之前,我...
Java中hashcode,equals和==

Java中hashcode,equals和==

hashcode方法返回该对象的哈希码值。hashCode()方法可以用来来提高Map里面的搜索效率的,Map会根据不同的hashCode()来放在不同的位置,Map在搜索一个对象的时候先通过hashCode()找到相应的位置,然后再根据equals()方法判断这个位置上的对象与当前要插入的对象是不是同一个。若两个对象equals相等,但不在一个区间,根本没有机会进行比较,会被认为是不同的对象。所以,Java对于eqauls方法和hashCode方法是这样...
Java transient关键字使用小记

Java transient关键字使用小记

虽然自己最熟的是Java,但很多Java基础知识都不知道,比如transient关键字以前都没用到过,所以不知道它的作用是什么,今天做笔试题时发现有一题是关于这个的,于是花个时间整理下transient关键字的使用,涨下姿势~~~好了,废话不多说,下面开始:1. transient的作用及使用方法我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,...
C/C++语言中关于const用法的总结

C/C++语言中关于const用法的总结

一. const的基本功能与用法1.将限定符声明为只读使用方法如下,在类型前/后加上关键字const,该变量必须被初始化,否则编译错误;该变量不能被重新赋值,否则也编译错误。 举例:const int i = 50;// 编译正确const int j; // 编译错误int k = 0;i = k; // 编译错误k = i; // 编译正确12.用于修饰函数形参,保护参数使其不被修改用法1:若形参为const A* a,则...
<< 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 >>