码迷,mamicode.com
首页 > 编程语言 > 周排行
总结(3)--- 知识总结(内存管理、线程阻塞、GIL锁)
一、Python中是如何进行内存管理的? 垃圾回收:Python不像C++,Java等语言一样,他们可以不用事先声明变量类型而直接对变量进行赋值。对Python而言,对象的类型和内存都是在运行时确定的。这也是为什么我们称Python语言为动态类型的原因 引用计数:Python采用类似Windows内 ...
分类:编程语言   时间:2017-12-08 21:07:05    阅读次数:233
python3之装饰器
1、装饰器 装饰器本质上是一个python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。它经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限验证等场景,装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量与函数功能 ...
分类:编程语言   时间:2017-12-08 21:07:20    阅读次数:213
多线程编程之原子操作
在多线程环境中,对共享的变量的访问,可以使用基于Compare And Swap这种lock free的技术进行实现,这种实现的好处是效率高。 一、原子操作摘录 1.1 Android 源码:system/core/libcutils /atomic.c(针对X86): 1 #elif define ...
分类:编程语言   时间:2017-12-08 21:07:36    阅读次数:348
多线程环境下队列操作之锁的教训
之前一直在研究多线程环境下的编程方法,却很少实战体验,以至于我一提到多线程编程,我总是信心不足,又总是说不出到底哪里不明白。今天工程现场反馈了一个“老问题”,我一直担心的是DAServer的运行机制有什么我不明白的地方,DAS Toolkit中总有一部分是我没有仔细研究的,在我心中有阴影,所以工程出 ...
分类:编程语言   时间:2017-12-08 21:07:49    阅读次数:241
多线程编程之读写锁
在《多线程编程之Linux环境下的多线程(二)》一文中提到了Linux环境下的多线程同步机制之一的读写锁。本文再详细写一下读写锁的概念和原理。 一、什么是读写锁 读写锁(也叫共享-独占锁)实际是一种特殊的自旋锁,它把对共享资源的访问者划分成读者和写者,读者只对共享资源进行读访问,写者则需要对共享资源 ...
分类:编程语言   时间:2017-12-08 21:08:02    阅读次数:221
多线程编程之Windows同步方式
在Windows环境下针对多线程同步与互斥操作的支持,主要包括四种方式:临界区(CriticalSection)、互斥对象(Mutex)、信号量(Semaphore)、事件对象(Event)。下面分别针对这四种方式作说明: (1)临界区(CriticalSection) 每个进程中访问临界资源的那段 ...
分类:编程语言   时间:2017-12-08 21:11:47    阅读次数:241
JavaEE——jsp介绍
分类:编程语言   时间:2017-12-08 22:09:52    阅读次数:267
八大排序算法总结(1)
冒泡排序: 第一轮:从下标0到n-1(n 是数组长度),如果前一个元素比后一个元素大,那么,相邻的两两交换,最后数组中最大的元素放在最后一个位置上。 第二轮:从标0到n-2,重复上过程,这样第二大的元素,就放在了倒数第二个位置上。 。。。。。。。 选择排序: 第一轮:从下标0到n-1,找出最小元素的 ...
分类:编程语言   时间:2017-12-08 22:50:22    阅读次数:206
来点福利,看二维数组如何打造推箱子小游戏
C语言学好,通杀C++。这就是方向之一。 前面看过的读者,是不是觉得很鸡肋的知识,全是基本的运用,可是呢?还是看不出能干吗。 那么下面就用二维数组打造,推箱子小游戏。首先,得问问,有何思路? 光写没有用,没到一部分内容觉得可以了,最好先打印下看看效果,要不然写到都不知道自己有没有写错! 效果如图: ...
分类:编程语言   时间:2017-12-08 22:50:47    阅读次数:180
Code Kata:大整数比较大小&大整数四则运算---加减法 javascript实现
大整数的四则运算已经是老生常谈的问题了。很多的库也已经包含了各种各样的解决方案。 作为练习,我们从最简单的加减法开始。 加减法的核心思路是用倒序数组来模拟一个大数,然后将两个大数的利用竖式进行运算。 加法函数: 异符号相加时调用减法函数(减法函数后面给出) 同符号相加先确定符号 因为输入输出的为字符 ...
分类:编程语言   时间:2017-12-08 22:51:21    阅读次数:164
spring的面试
Spring注解 Spring的对象访问 Spring面向切面编程 Spring MVC框架1.spring的优点轻量级:基础版本的spring框架大约2mb控制反转(IOC):把生成对象的权利反转给spring框架面向切面(AOP):把可重用的功能提取出来,然后再将这些通用的功能在合适的时候织入到 ...
分类:编程语言   时间:2017-12-08 22:53:41    阅读次数:135
Python实现基于二叉树存储结构的堆排序算法示例
本文实例讲述了Python实现基于二叉树存储结构的堆排序算法。分享给大家供大家参考,具体如下: 既然用Python实现了二叉树,当然要写点东西练练手。 网络上堆排序的教程很多,但是却几乎都是以数组存储的数,直接以下标访问元素,当然这样是完全没有问题的,实现简单,访问速度快,也容易理解。 但是以练手的 ...
分类:编程语言   时间:2017-12-08 22:53:55    阅读次数:213
Java命名规范
一、命名规范 1、 项目名全部小写 2、 包名全部小写 3、 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写。 如:public class MyFirstClass{} 4、 变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。 如:int index=0 ...
分类:编程语言   时间:2017-12-08 22:55:04    阅读次数:182
Python 错误和异常小结
1.Python异常类 Python是面向对象语言,所以程序抛出的异常也是类。常见的Python异常有以下几个,大家只要大致扫一眼,有个映像,等到编程的时候,相信大家肯定会不只一次跟他们照面(除非你不用Python了)。 异常 描述 NameError 尝试访问一个没有申明的变量 ZeroDivis ...
分类:编程语言   时间:2017-12-08 22:55:21    阅读次数:157
python出现关于模块(i18n)的不能使用的解决方法
今天在看python编程从入门到实践的时候,遇到了 如下问题 然后查找文献找到一个网友 的解决方法,方法是这样的: 对于报错,事实上,pygal.i18n 已经不存在了,现在已经更改成了 pygal_maps_world ,需要单独通过pip下载,我使用的是Python3,因此需要在终端使用 pip ...
分类:编程语言   时间:2017-12-08 22:55:59    阅读次数:8548
【java系列】java开发环境搭建
描述 本篇文章主要讲解基于windows 10系统搭建java开发环境,主要内容包括如下: (1)安装资料准备 (2)安装过程讲解 (3)测试是否安装成功 (4)Hello Word测试 1 安装材料准备 1 安装材料准备 java开发环境搭建前,需要准备JDK和Eclipse。 1.1 JDK 下 ...
分类:编程语言   时间:2017-12-08 22:57:39    阅读次数:280
python数据类型-列表创建和操作
列表创建和操作a)  创建列表b)  基本操作c)  遍历与其说  列表  它是一个数据类型,用起来 更像一个灵活多变的数据存储方案 创建列表创建列表例子player = 'mao 80 50'   mao = '100 60 
分类:编程语言   时间:2017-12-08 22:57:59    阅读次数:322
python-之装饰器、迭代器、生成器
一 、为何要用装饰器 二、 什么是装饰器 三、 装饰器的使用 ...
分类:编程语言   时间:2017-12-08 22:58:06    阅读次数:227
javascript的严格模式和正常模式
在js代码中加入"use strict";就相当于进入严格模式,严格模式改变了语法和运行时行为,将隐藏的问题转化为错误。 js的严格模式有以下特点: 一、变量声明 全局变量必须显示声明,才能使用,如果没有用var声明,就使用,会报错。 二、函数声明 不能在非函数的代码块内声明函数,比如if语句,循环 ...
分类:编程语言   时间:2017-12-08 22:58:16    阅读次数:123
python面向对象(二)之封装
封装定义: 在程序设计中,封装(Encapsulation)是对具体对象的一种抽象,即将某些部分隐藏起来,在程序外部看不到,其含义是其他程序无法调用。 即“ 封装 ”就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体(即类);封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节 ...
分类:编程语言   时间:2017-12-08 22:58:36    阅读次数:206
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!