自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 linux内核复习-进程运行状态过程(一)

1. 进程状态及转换。

2023-07-03 13:23:13 94

转载 多进程的基本语法 、进程间数据交互与共享、进程锁和进程池的使用

https://www.cnblogs.com/Keep-Ambition/p/7598065.html

2023-06-29 14:46:20 90

转载 信号量(Semaphore)和时间(event)

https://www.cnblogs.com/Keep-Ambition/p/7597310.html

2023-06-29 13:28:03 108

转载 生产者和消费者模型

https://www.cnblogs.com/Keep-Ambition/p/7597664.html

2023-06-29 11:22:19 56

原创 解决git push之后返回500的问题

The requested URL returned error: 500在网上搜索一番,发现都是说的代理原因,但是自己尝试了一下,发现并不起作用。后来想到可能自己配置的url地址和自己的账号不匹配。cd进入.git/然后打开config问价夹,发现其中的git pushurl确实不是自己想要的地址。将其删除。问题解决!

2023-03-15 15:00:14 1102

转载 std::optional

撇开重复的查询不说,做法在线程上是否安全也有待商榷——如果因为线程的问题访问了那个并不存在的值,要么我们得到一个不确定的数,要么抛出异常,结果都是心碎了一地。如果你真的发自内心得觉得上边的代码很恶心的话,那么恭喜你看了这篇文章——你的直觉是对的,我们现在有更好的解决它的方法了。其次,对于某些类型,我们并不能找到类似的魔法值,或者就算找到后,这些值也不能轻松地被创造出来,这都给我们在使用魔法值时带来风险。变量,并没有用到动态分配内存,其实说实在的,在C++标准中,动态内存这种行为时时刻刻都是不被建议的。

2023-03-01 18:17:45 234

原创 std::reference_wrapper

【代码】std::reference_wrapper。

2023-03-01 18:09:25 119

转载 C++ 虚函数和纯虚函数的区别

/ 在这里,a虽然是指向A的指针,但是被调用的函数(foo)却是B的!return 0;这个例子是虚函数的一个典型应用,通过这个例子,也许你就对虚函数有了一些概念。它虚就虚在所谓"推迟联编"或者"动态联编"上,一个类函数的调用并不是在编译时刻被确定的,而是在运行时刻被确定的。由于编写代码的时候并不能确定被调用的是基类的函数还是哪个派生类的函数,所以被成为"虚"函数。

2023-02-19 00:16:33 102

翻译 pybind11之二(类的转换)

在python中使用pet_store的方法时,其会找不到。在c++中,要实现这个功能,必须增加一个虚函数,从而让pybind11自动识别它是个多态的。由于python中没有重载之说,因此,如果直接binding会因为不知道使用那个set方法而出错。在上面,py::overload_cast只是要求了参数的type,返回的type是通过推导得出。以下定义了一个pet_store方法,其返回使用Dog来实例化的Pet对象。方法一,在C++中使用template做。方法二,在python中做继承。

2023-02-14 20:29:40 314

原创 pybind11系列一(入门)

以下将在example域内,定义了参数the_answer = 42, what=“Word”.以上构建后可以通过使用help(example)可以查看使用方法。2. 如果需要指定add的参数,需要如下。3. 如果需要默认的参数。4. 类型明确的转换。

2023-02-14 17:43:23 155

原创 Docker的使用

一.创建镜像当我们从 docker 镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。1、从已经创建的容器中更新镜像,并且提交这个镜像 2、使用Dockerfile指令来创建一个新的镜像 新镜像 更新镜像之前,我们需要使用镜像来创建一个容器。 runoob@runoob:~$ docker run -t -i ubuntu:15.10 /bin/bashroot@e218edb10161:/# 在运行的容器内使用apt-get updat...

2023-02-14 17:31:49 31

转载 python package和模块

彻底明白Python package和模块 - 简书python 是通过module组织代码的,每一个module就是一个python文件,但是modules是通过package来组织的。 如果我们自己写着玩,有的时候就是一两...https://www.jianshu.com/p/178c26789011...

2022-04-18 10:09:17 50

转载 install chrome on linux

原文地址:http://www.linuxidc.com/Linux/2013-10/91857.htm安装谷歌浏览器,只需要三行代码:打开终端,输入cd /tmp对于谷歌Chrome32位版本,使用如下链接:wget https://dl.google.com/linux/direct/google-chrome-stable_current_i386.deb对于64位版本可以使用如下链接下载:wget https://dl.google.com/linux/direct/google-ch

2021-06-17 17:36:43 157

原创 数据库基本操作

SELECT - 从数据库中提取数据SELECT DISTINCT name-- 使name去除重复,仅留一个UPDATE api4.testdata2 SET project='xj', country='USA' WHERE name='新疆'; - 更新数据库中的数据DELETE FROM Websites WHERE name='Facebook' AND country='USA'; - 从数据库中删除数据(删除整行)DELETE * FROM table_name; 删除所有行I...

2021-04-20 14:59:06 287

转载 什么是死锁?

什么是死锁?所谓死锁,是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进。 因此我们举个例子来描述,如果此时有一个线程A,按照先锁a再获得锁b的的顺序获得锁,而在此同时又有另外一个线程B,按照先锁b再锁a的顺序获得锁。如下图所示:产生死锁的原因?可归结为如下两点:a. 竞争资源系统中的资源可以分为两类:可剥夺资源,是指某进程在获得这类资源后,该资源可以再被其他进程或系统剥夺,CPU和主存均属于可剥夺性资源;另一类资源是不

2021-04-20 14:21:45 63

转载 python_并行与并发、多线程

python_并行与并发、多线程问题一: 计算机是如何执行程序指令的?问题二: 计算机如何实现并发的?轮询调度实现并发执行 程序1-8轮询完成,才再CPU上运行问题三: 真正的并行需要依赖什么?并行需要的核心条件多进程实现并行问题一: 什么是进程?计算机程序是存储在磁盘上的文件。  只有把它们加载到内存中,并被操作系统调用 它们才会拥有其自己的生命周期。进程表示一个正在执行的程序。  每个进程都有独立地址空间以及其他的辅助数据进程(Pr..

2021-04-20 14:18:17 106

转载 python的多线程

版权声明:本文为博主原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/weixin_40481076/article/details/101594705————————————————版权声明:本文为CSDN博主「笨小孩哈哈」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/weixin_40481076/article/detail

2021-04-20 14:13:38 61

转载 浏览器缓存机制

浏览器缓存机制浏览器缓存机制,其实主要就是HTTP协议定义的缓存机制(如:Expires;Cache-control等)。但是也有非HTTP协议定义的缓存机制,如使用HTML Meta标签,Web开发者可以在HTML页面的<head>节点中加入<meta>标签,代码如下: html code <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 上述代码的作用是告诉浏览器当...

2021-04-20 14:00:52 85

原创 2021-04-14面试常用问题

一. 迭代器两个方法iter() 和 next()。实列:list=[1,2,3,4]it = iter(list) # 创建迭代器对象for x in it: print (x, end=" ")输出结果:1 2 3 4实列2:创建一个返回数字的迭代器,初始值为 1,逐步递增 1:class MyNumbers: def __iter__(self): self.a = 1 return self def __next__(s.

2021-04-15 09:32:56 137 1

转载 前后端开发分离方法和原因

1. 问题的提出开发一个Web应用的时候我们一般都会简单地分为前端工程师和后端工程师(注:在一些比较复杂的系统中,前端可以细分为外观和逻辑,后端可以分为CGI和Server)。前端工程师负责浏览器端用户交互界面和逻辑等,后端负责数据的处理和存储等。前后端的关系可以浅显地概括为:后端提供数据,前端负责显示数据。在这种前后端的分工下,会经常有一些疑惑:既然前端数据是由后端提供,那么后端数据接口还没有完成,前端是否就无法进行编码?怎么样才能做到前后端独立开发?考虑这么一个场景:Alex和Bob是一对好

2021-03-10 14:47:44 320

转载 modbus通讯协议详解 通俗易懂

modbus通讯协议详解 通俗易懂如今风靡全球的“中国新四大发明”正深深地改变着人们的生活。就拿购物来说,以前买东西要逛商场,先找楼层导购,再逛到相应柜台,接着愉快购物,选好东西后经过一番讨价还价,后付钱拿货走人,这些都是稀松平常的场景。可是,如果没有实际看见东西,只在网上看到照片,在见不着商家就先付钱,然后等着东西送到家里,这些场景放在过去简直让人不可思议,但就是凭借一套行之有效的交易规则实现了,也就是一种各方都需要遵守的协议。MODBUS既然购物能通过一套规则做到这么便捷,那么通信.

2021-01-06 14:24:00 1439

原创 遍历文件夹下的图片(包括子文件夹),按照每100个单位尺寸切割为N份,将N份放入N个文件夹下面

在使用save函数时,单独的PIL.image.save没有找到直接存到相应地址。因此加了os.path.join函数,把其结果当作filename参数传到save中。import osfrom PIL import Imageimage_path = 'F:/AI平台/测试资源/风机叶片/原图/'# 遍历文件夹及其子文件夹中的文件,并存储在一个列表中# 输入文件夹路径、空文件列表[]# 返回 文件列表Filelist,包含文件名(完整路径)def get_filelist(dir,.

2020-11-03 10:53:59 415

原创 git的使用

一:GitHub密钥1.设置账户(需要和github账户设置一致)git config --global user.name xxxgit config --global user.emailxxx@foxmail.com2.查看设置git config --listuser.name=xxxuser.email=xxx@foxmail.com3.创建git本地仓库git init此时会出现提示 : inialized empty Git reposit...

2020-09-11 13:18:55 112

原创 2020-08-21

删除:使用rm -i filename删除文件使用-i命令参数会在删除前提示你是不是要真的删除该文件,因为文件一旦删除就无法找回如图输入命令后会有提示,输入y后成功删除使用rm filename或rm -f filename直接删除文件该命令会直接删除文件,不会给出提示查看文件内容cat 命令用于连接文件并打印到标准输出设备上。修改文件名打开终端,输入命令mv file1 file2把当前目录下的file1文件名改成file2,如果该目录下有file2,则覆盖以前.

2020-08-21 18:52:32 64

原创 shell命令

1. vim使用:使用:q退出时,需要保存。 如强制不退出保存,需要q!2.ls -lh 显示每个文件占用内存3.实时显示log,tail

2020-07-23 10:28:51 85

原创 自动化框架-邮箱配置

邮箱配置1.需要邮箱支持SMTP服务。2.password不是登录密码,而是邮箱的授权密码3.开通server时连接长时间等待的解决------ smtp_server = smtplib.SMTP(liangtyson@163.com,25)改为smtp_server = smtplib.SMTP_SSL(liangtyson@163.com,465)非SSL请求改为SSL请求...

2020-06-29 19:39:50 295

原创 selenium测试自动化1 2020年6月23日

1. 使用录屏软件时,出现# ERROR: Caught exception [ERROR: Unsupported command [selectWindow | win_ser_1 | ]]解决:由于selenium未能自动转化到新的浏览器窗口导致。读取目前的窗口句柄driver.current_window_handle读取目前的窗口句柄集合driver.window_handles转换到新的窗口句柄driver.switch_to.window(driver.window_handles[

2020-06-27 22:11:31 252

原创 数据库使用复习

mongodb安装好的执行文件包含mongo和mongod,mongo为访问数据库,mongod为开启数据库。可在window服务将mongodb自动开启命令:mongo #进入数据库show dbs #显示数据库use a_1 #创建并进入a_1数据库db.createCollection("b_1") #创建集合b_1db.b_1.insert({title: 'MongoDB 教程',description: 'MongoDB 是一个 Nosql 数据库',by: '菜鸟教程',

2020-06-27 22:08:33 54

原创 20200424 找工作复习

使用appuim一,如何安装依次安装依赖sdk,再安装appuim,再下载个aapt,再下载个adb。配置好环境变量。安装夜神模拟器二.连接1.打开appium,打开夜神模拟器。2.使用adb.输入:adb connect 127.0.0.1:62001 #62001为夜神模拟器端口3.adb devices #确认连接4.在appium中的Desired capabilities 中依次添加如下信息。{"deviceName": "127.0.0.1:62001", #设备名,adb

2020-06-27 22:08:00 76

原创 2020.04.21 测试自动化2

class TestTest3(): def setup_class(self, method): self.driver = webdriver.Firefox() self.vars = {} def teardown_class(self, method): self.driver.quit() self.driver.close() print('ok,测试结束') # def wait_f.

2020-06-27 22:07:22 361

原创 测试自动化1

测试自动化1selenium ide for firefox介绍:该工具可以用于网页前端测试record。谷歌的需要科学上网,因此使用火狐的。安装:在火狐浏览器中打开添加附件,搜索selenium就可以找到。使用:开启记录,输入要测试的网址。在网址上去操作网页。export可以转化成python的代码。然后放到python的ide中更改代码,再进行运行。语法问题:一. vars={} 和 .dict很像,返回一个字典。二.pytest中的setup和teardown模

2020-06-27 22:06:36 74

原创 被testhome赶来这边!!!

https://testerhome.com/certify这个要人崩溃的网站

2020-06-27 22:05:25 2011

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除