-
使用异步的必要性与高效性
所属栏目:[语言] 日期:2021-05-27 热度:171
操作系统可以看作是个虚拟机(VM),进程生活在操作系统创造的虚拟世界里。进程不用知道到底有多少 core 多少内存,只要进程不要索取的太过分,操作系统就假装有无限多的资源可用。 基于这个思想,线程(Thread)的个数并不受硬件限制:你的程序可以只有一[详细]
-
Python打包exe程序的高效处理方法
所属栏目:[语言] 日期:2021-05-27 热度:183
但python的运行环境复杂,编写的程序往往是借助了很多附加的功能库来实现,对简单的打包会造成一定困难。本人也是在经历了多次的打包失败和成功的经历之后,觉得pyinstaller的成功率最高,所以有必要针对pyinstaller写一篇避坑指南。 一、安装 使用python[详细]
-
什么是“类加载过程”你知道吗?
所属栏目:[语言] 日期:2021-05-27 热度:180
计算机能识别的是机器指令码,简称机器码。机器码是二进制的,计算机可以直接识别,但与人类的语言差别太大,不容易被人理解和记忆。后来,就诞生了各种高级语言,人们用高级语言编写程序,然后通过把程序解释或编译成机器码。 比如python,就是一种解释型[详细]
-
nonlocal 和 global的原理及其差异
所属栏目:[语言] 日期:2021-05-27 热度:82
副标题#e# 对变量名的赋值和引用,是两种不同的情况: 赋值:创建一个变量或者修改。 引用:检索其值。 以上两者的差别,会导致我们在函数中: 赋值一个 全局变量:等于创建一个局部变量。 自由变量:等于创建一个局部变量。 引用:正常检索其值。 我们修改[详细]
-
计算机视觉是一门高端技术
所属栏目:[语言] 日期:2021-05-27 热度:131
计算机视觉这种技术可以将静止图像或视频数据转换为一种决策或新的表示。所有这样的转换都是为了完成某种特定的目的而进行的。 输入数据可能包含一些场景信息,例如相机是搭载在一辆车上的或者雷达发现了一米之外有一个目标。一个新的表示,意思是将彩色图[详细]
-
OpenCV 的应用和使用开源许可证
所属栏目:[语言] 日期:2021-05-27 热度:89
许多计算机科学家和经验丰富的程序员多多少少都了解计算机视觉的某些方面,但是很少有人熟谙计算机视觉的每一个应用。比如: 很多人了解计算机视觉在安保行业的应用; 一些人也知道它在网页端的图像和视频处理中的应用在逐渐增加。 但很少有人知道计算机视[详细]
-
OpenCV 与IPPICV 加速的高效性
所属栏目:[语言] 日期:2021-05-27 热度:139
1999 年,Gary Bradski(加里布拉德斯基)当时在英特尔任职,怀着通过为计算机视觉和人工智能的从业者提供稳定的基础架构并以此来推动产业发展的美好愿景,他启动了 OpenCV 项目。 OpenCV 库用C语言和C++语言编写,可以在 Windows、Linux、Mac OS X 等系统[详细]
-
PyTorch 的基础入门及重要基础
所属栏目:[语言] 日期:2021-05-27 热度:71
为什么使用 Numpy?实际上 Python 本身含有列表(list)和数组(array),但对于大数据来说,这些结构是有很多不足的。 由于列表的元素可以是任何对象,因此列表中所保存的是对象的指针。例如为了保存一个简单的[1,2,3],都需要有 3 个指针和 3 个整数对象[详细]
-
两种典型的使用继承的情景情况叙述
所属栏目:[语言] 日期:2021-05-27 热度:138
派生类除了拥有基类的成员,还可以定义自己的新成员,以增强类的功能。 以下是两种典型的使用继承的场景: 1) 当你创建的新类与现有的类相似,只是多出若干成员变量或成员函数时,可以使用继承,这样不但会减少代码量,而且新类会拥有基类的所有功能。 2)[详细]
-
在派生类的构造函数中调用基类的构造函数极为重要
所属栏目:[语言] 日期:2021-05-27 热度:75
副标题#e# 前面我们说基类的成员函数可以被继承,可以通过派生类的对象访问,但这仅仅指的是普通的成员函数,类的构造函数不能被继承。构造函数不能被继承是有道理的,因为即使继承了,它的名字和派生类的名字也不一样,不能成为派生类的构造函数,当然更不[详细]
-
Java注解annotation的用途分析
所属栏目:[语言] 日期:2021-05-23 热度:142
今天在看以前写的代码,发现自己对注解的了解还不是非常透彻,经常选择性就忽视了对注解实现的探究,遂查询资料学习了一下。 注解是什么 实现格式 从代码来看我们知道注解的实现格式是: public@interfaceMyAnnotation{ 属性列表; } 所以我们有了第一直觉[详细]
-
如何构造一个死锁及处理方式
所属栏目:[语言] 日期:2021-05-23 热度:176
副标题#e# 很简单,只要让线程1占有对象a的锁后,再去请求对象b的锁。与此同时,对象2已经占有了对象b的锁,再请求对象a的锁。线程1与线程2互相等待,形成了死锁。(在面试中,也会被经常地要求手写死锁) 代码如下: packagecom.example.dl; importorg.sprin[详细]
-
C++多线程基本概念及其创建线程的操作
所属栏目:[语言] 日期:2021-05-22 热度:153
副标题#e# 并发、进程、线程的基本概念 并发两个或者多个任务(独立的活动)同时发生(进行):一个程序通知执行多个独立的任务并发假象(不是真正的并发):单核CPU通过上下文切换方式实现进程 进程计算机中的程序关于某数据集合上的一次运行活动 进程特性 动态性[详细]
-
让你滔滔不绝的Java的泛型知识点梳理
所属栏目:[语言] 日期:2021-05-22 热度:165
副标题#e# 最近技术交流群里,有朋友问:Object和泛型T有啥区别。回答完问题,不禁在想,面试在即,还有那么多朋友不了泛型?是时候给大家整理一篇泛型相关的文章了,一篇文章全面搞定泛型,让大家再也不愁面试或实践中泛型相关的问题了。 什么是泛型 泛型是[详细]
-
Java高并发编程入门篇:AQS
所属栏目:[语言] 日期:2021-05-22 热度:62
曾经有一道比较比较经典的面试题你能够说说java的并发包下面有哪些常见的类?大多数人应该都可以说出 CountDownLatch、CyclicBarrier、Sempahore多线程并发三大利器。这三大利器都是通过AbstractQueuedSynchronizer抽象类(下面简写AQS)来实现的,所以学习三[详细]
-
FileOutputStream与FileInputStream的随机访问文件读写
所属栏目:[语言] 日期:2021-05-22 热度:158
副标题#e# 由于流是单向的,简单文件写可使用FileOutputStream,而读文件则使用FileInputStream。 任何数据输出到文件都是以字节为单位输出,包括图片、音频、视频。以图片为例,如果没有图片格式解析器,那么图片文件其实存储的就只是按某种格式存储的字节[详细]
-
用Python实现多Excel、多Sheet的合并处理的方法
所属栏目:[语言] 日期:2021-05-22 热度:73
1)如何选择要合并的Excel文件? 利用os,获取所有要合并的Excel文件。 2)如何选择要合并的Sheet? 利用xlrd库进行Excel读取,获取要合并的Sheet名。 3)如何合并? 利用pandas库,对所有Sheet名逐一循环打开,通过concat()进行数据追加合并即可。 4)如何保存文[详细]
-
Java中基础类型的包装类在拆箱和装箱过程中起到了什么用处
所属栏目:[语言] 日期:2021-05-22 热度:105
副标题#e# 下面通过一个简单的示例才重现一下异常出现的场景。 publicclassBoxTest{ publicstaticvoidmain(String[]args){ MapString,Objectresult=httpRequest(); longuserId=(Long)result.get(userId); } //模拟一个HTTP请求 privatestaticMapString,Obje[详细]
-
extends与super通配符的差异
所属栏目:[语言] 日期:2021-05-22 热度:84
副标题#e# 在定义泛型类型Generic的时候,也可以使用extends通配符来限定T的类型: publicclassGenericTextendsNumber{...} 现在,我们只能定义: GenericNumberp1=null; GenericIntegerp2=newGeneric(1,2); GenericDoublep3=null; 因为Number、Integer和Do[详细]
-
Java 泛型机制允许程序员在编译时检验到非法的类型
所属栏目:[语言] 日期:2021-05-22 热度:120
Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。 简单理解就是:泛型指定编译时的类型,减少运行时由于对象类型不匹配引发的异常。其主要用途是提高我们的代码的复用率。[详细]
-
Windows、Linux 和 Mac OS 三大平台是初学者的福音
所属栏目:[语言] 日期:2021-05-21 热度:141
Windows 下的 IDE 多如牛毛,常见的有以下几种。1) Visual StudioWindows 下首先推荐大家使用微软开发的 Visual Studio(简称 VS),它是 Windows 下的标准 IDE,实际开发中大家也都在使用。 为了适应最新的 Windows 操作系统,微软每隔一段时间(一般是一[详细]
-
数据在内存中的保存极为重要
所属栏目:[语言] 日期:2021-05-21 热度:138
计算机要处理的信息是多种多样的,如数字、文字、符号、图形、音频、视频等,这些信息在人们的眼里是不同的。但对于计算机来说,它们在内存中都是一样的,都是以二进制的形式来表示。 要想学习编程,就必须了解二进制,它是计算机处理数据的基[详细]
-
干货:桌面操作系统与嵌入式操作系统的差异
所属栏目:[语言] 日期:2021-05-21 热度:57
桌面操作系统对于当前主流桌面操作系统而言,可使用 Visual以及 LLVM Clang 这三大编译器。 Visual C++(简称 MSVC)是由微软开发的,只能用于 Windows 操作系统;GCC 和 LLVM Clang除了可用于 Windows 操作系统之外,主要用于 Unix/Linux 操作系统。 像现[详细]
-
从现在开始积蓄能量,有执念的人最可怕
所属栏目:[语言] 日期:2021-05-21 热度:188
编程是一门技术,我也不知道它难不难,我只知道,只要你想学,肯定能学会。每个人的逻辑思维能力不同,兴趣点不同,总有一部分人觉得容易,一部分人觉得吃力。 在我看来,技术就是一层窗户纸,是有道理可以遵循的,最起码要比搞抽象的艺术容易很多。 但是,[详细]
-
C语言是菜鸟和大神的边界线
所属栏目:[语言] 日期:2021-05-21 热度:51
所有的程序都在拼尽全力节省内存,都在不遗余力提高内存使用效率,计算机的整个发展过程都在围绕内存打转,不断地优化内存布局,以保证可以同时运行多个程序。 不了解内存,就学不会进程和线程,就没有资格玩中大型项目,没有资格开发底层组件,没有资格架[详细]
