编程之美

CATALOGUE 目录

筅森魡賤 提交于 2019-11-26 14:58:37
1 语言基础 1.1 c/c++ 【转】C/C++ 存储类型 作用域 连接类型 【转】C/C++内存划分 【转】C/C++除法实现方式及负数取模详解 【转】为什么C++编译器不能支持对模板的分离式编译 C/C++:原码、反码和补码 C/C++:拷贝构造函数 C/C++:类模板 1.2 linux C linux内核-双向链表 linux内核-红黑树 1.3 Java Java:基础 1.4 C# 2 开发平台 2.1 .net 2.2 QT QT-【转】基础(略) QT-【转】2D编程 QT-【转】数据库编程 QT-【转】网络编程 QT-【转】进阶 QT-【转】OpenGL QT-【转】QT5 QT-【转】Qt 4迁移至Qt 5 2.3 VC/VS 2.4 MFC MFC程序运行流程 MFC消息映射机制 MFC对话框 MFC控件 MFC菜单、工具栏和状态栏 MFC文档、视图和框架 MFC常用类 MFC定时器使用 MFC字体与文本输出 MFC图形图像 2.5 Linux管理 压缩和解压缩命令 linux启动流程 linux命令 Linux文件系统 2.6 Android 2.7 IOS 3 脚本开发 3.1 Makefile Makefile编程 3.2 Shell Shell编程 4 嵌入式开发 4.1 ARM 4.2 汇编 4.3 开发板移植 FL2440移植u-boot2011

CATALOGUE 目录

心已入冬 提交于 2019-11-26 14:58:09
1 语言基础 1.1 c/c++ 【转】C/C++ 存储类型 作用域 连接类型 【转】C/C++内存划分 【转】C/C++除法实现方式及负数取模详解 【转】为什么C++编译器不能支持对模板的分离式编译 C/C++:原码、反码和补码 C/C++:拷贝构造函数 C/C++:类模板 1.2 linux C linux内核-双向链表 linux内核-红黑树 1.3 Java Java:基础 1.4 C# 2 开发平台 2.1 .net 2.2 QT QT-【转】基础(略) QT-【转】2D编程 QT-【转】数据库编程 QT-【转】网络编程 QT-【转】进阶 QT-【转】OpenGL QT-【转】QT5 QT-【转】Qt 4迁移至Qt 5 2.3 VC/VS 2.4 MFC MFC程序运行流程 MFC消息映射机制 MFC对话框 MFC控件 MFC菜单、工具栏和状态栏 MFC文档、视图和框架 MFC常用类 MFC定时器使用 MFC字体与文本输出 MFC图形图像 2.5 Linux管理 压缩和解压缩命令 linux启动流程 linux命令 Linux文件系统 2.6 Android 2.7 IOS 3 脚本开发 3.1 Makefile Makefile编程 3.2 Shell Shell编程 4 嵌入式开发 4.1 ARM 4.2 汇编 4.3 开发板移植 FL2440移植u-boot2011

java并发编程之美-阅读记录1

℡╲_俬逩灬. 提交于 2019-11-26 14:47:59
1.1什么是线程?   在理解线程之前先要明白什么是进程,因为线程是进程中的一个实体。(线程是不会独立存在的)   进程:是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,线程则是进程中的一个执行路径,一个进程中至少会有一个线程,进程中的多个线程共享进程的资源。   线程:是cpu分配的基本单位。      由上图可看出,一个进程中会有多个线程,多个线程共享堆和方法区,但是每一个线程都会有自己的栈和程序计数器。 为什么要将栈和程序计数器设置为线程私有的呢? 前边说线程是cpu执行的基本单位,而cpu一般是使用时间片轮转方式轮询占用的,所以当当前线程cpu时间片使用完毕后,要让出cpu,等待下一次轮到自己的时候在调用。 那问题就来了,线程是如何知道之前执行到哪了? 程序计数器就是为了记录之前让出cpu时执行到的地址,等下次再次执行时就可以从程序计数器中获取之前执行到的位置,继续向下执行。(程序计数器是不会记录native方法执行的地址的,它只记录java代码执行的地址),而栈则是存储现场的局部变量,一遍之后再次使用 1.2线程的创建和运行   三种方式:继承Thread、实现Runnable接口、使用FuthreTask方式(实现Callable接口)。 package com.nxz.blog.otherTest; import java.util