自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 AttributeError: ‘open3d.open3d.geometry.PointCloud‘ object has no attribute ‘select_by_index‘

AttributeError: 'open3d.open3d.geometry.PointCloud' object has no attribute 'select_by_index'

2023-08-21 22:26:30 852 2

原创 ‘open3d.open3d.geometry.PointCloud‘ object has no attribute ‘voxel_down_sample‘

AttributeError: 'open3d.open3d.geometry.PointCloud' object has no attribute 'voxel_down_sample'

2023-08-14 16:07:11 1152

原创 fig, ax = plt.subplots() 创建的ax如何设置横纵坐标轴的名称

fig, ax = plt.subplots()ax.set_title('total_loss')ax.set_ylabel('total_loss')ax.set_xlabel('episode')

2021-03-08 09:47:29 5001

原创 强化学习之Sarsa算法最简单的实现代码-(环境:“CliffWalking-v0“悬崖问题)

1、算法简介直接上伪代码:伪代码解释:第一行:①设置动作空间A和状态空间S,以后你agent只能执行这A中有的动作,你环境的状态也就S中这么些; ②初始化Q表格,也就是表格的横坐标为动作,纵坐标为状态,每个格子里面的值表示:纵坐标对应的状态s下,执行横坐标对应的动作a,后环境反馈回来的奖励值r(注意啊,这个奖励值先开是都初始化为0啥的,然后不断的episode,这整个表不断的更新,不断的确定哪个状态执行哪个动作奖励是多少,宏观上就是agent不断的确定,不断的...

2021-03-03 16:05:10 3502 6

原创 强化学习代码从零开始学习-1

知识点:gym的核心接口是environment。环境中提供一下几种核心的方法:①reset():重置环境状态,回到初始环境,方便开始下一回合训练。②step(action):推进一个时间步长,粗俗的理解就是,你把这个动作action,作用到环境中,然后这个方法返回环境被作用后的一些状态啥玩意等东西。传入的参数是一个要执行到环境中的动作action,返回的参数有四个: <1>observation (这是一个对象):对环境的这次观测; <...

2021-03-01 14:17:47 1381 1

原创 pytorch学习之---squeeze()和unsqueeze()函数功能及使用

首先这个squeeze单词啥意思:1.squeeze(1)和squeeze(-1)作用:两者的效果一样,都是给张量tensor降维,但不是啥张量都可以用这两个函数来降维,它只能降维一种情况下张量的维度。就是我的张量tensor是一个n*1维度的张量,例如:张量[[1], [2], [3]]是一个3*1维的,调用这两个函数后效果如图:但是如果不是n*1的这种2维张量的话,如本就是1维的,或者m*n(其中m和n都是大于1的)这种的话,调用这个函数一点效果没有。2.squeeze(0)

2021-01-31 10:41:11 40267 4

原创 线程池概念、线程池作用、线程池的四种创建方式

线程池1.1、什么是线程池?线程池是指在初始化一个多线程应用程序过程中创建一个线程集合,然后在需要执行新的任务时重用这些线程而不是新建一个线程。线程池中线程的数量通常完全取决于可用内存数量和应用程序的需求。然而,增加可用线程数量是可能的。线程池中的每个线程都有被分配一个任务,一旦任务已经完成了,线程回到池子中并等待下一次分配任务。1.2、线程池作用基于以下几个原因在多线程应用程序...

2020-04-17 21:57:09 302

原创 什么是ThreadLocal?

API截图:ThreadLocal提高一个线程的局部变量,访问某个线程拥有自己局部变量。  当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本。ThreadLocal的接口方法ThreadLocal类接口很简单,只有4个方法,我们先来了解一下:...

2020-04-17 16:24:18 224

原创 Volatile

一、volatilevolatile 是一个类型修饰符。volatile 的作用是作为指令关键字,确保本条指令不会因编译器的优化而省略。二、volatile 的特性①保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的。(实现可见性)class ThreadVolatileDemo extends Thread { /...

2020-04-17 12:15:51 134

原创 java内存模型(JMM)--别和jvm内存结构搞混了

注意:java内存模型和jvm内存结构(堆、栈、方法区。。。)别搞混了jvm内存结构是这个啊: JMM(Java Memory Model): 共享内存模型指的就是Java内存模型(简称JMM),JMM决定一个线程对共享变量的写入时,能对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储...

2020-04-17 10:40:37 193

原创 线程3大特性(原子性、可见性、有序性)

①什么是原子性即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。一个很经典的例子就是银行账户转账问题:比如从账户A向账户B转1000元,那么必然包括2个操作:从账户A减去1000元,往账户B加上1000元。这2个操作必须要具备原子性才能保证不出现一些意外的问题。我们操作数据也是如此,比如i = i+1;其中就包括,读取i的值,计算i,写入i。这行...

2020-04-17 10:09:49 595

原创 join(long millis)意思?join()作用

①join()作用:class JoinThread implements Runnable { public void run() { for (int i = 0; i < 100; i++) { System.out.println(Thread.currentThread().getName() + "---i:" + i); } }}public ...

2020-04-16 22:45:36 563

原创 如何停止线程?stop方法过时弊端

1. 使用退出标志,使线程正常退出,也就是当run方法完成后线程终止。 2. 使用stop方法强行终止线程(这个方法不推荐使用,因为stop和suspend、resume一样,也可能发生不可预料的结果)。Thread类的下面三个方法,都过上了,都有弊端: 3. 使用interrupt方法中断线程,线程转为阻塞状态,基本就用这个方法了。...

2020-04-16 22:28:09 871

转载 Lock 接口与 synchronized 关键字的区别

1.JDK版本不同synchronized关键字产生于JKD1.5之前,是低版本保证共享资源同步访问的主要技术。Lock接口产生于JDK1.5版本,位于著名的java.util.concurrent并发包中,是Java提供的一种比synchronized关键字更加灵活与丰富的共享资源同步访问技术。2.读写锁synchronized关键字只提供了一种锁,即独占锁。Lock接口不仅提供...

2020-04-16 21:34:03 189

原创 多线程之间通信

什么是多线程之间通讯? 多线程之间通讯,其实就是多个线程在操作同一个资源,但是操作的动作不同。 画图演示 方法一:synchronized和wait配套使用Object类的方法部分截图:其中我们要用到的是wait()、notify()、notifyAll()是三个方法,可以用来控制线...

2020-04-16 21:20:35 377

原创 wait与sleep区别?

对于sleep()方法,我们首先要知道该方法是属于Thread类中的。而wait()方法,则是属于Object类中的。sleep()方法导致了程序暂停执行指定的时间,让出cpu给其他线程,但是他的监控状态依然保持者,当指定的时间到了又会自动恢复运行状态。在调用sleep()方法的过程中,线程不会释放对象锁。而当调用wait()方法的时候,线程会放弃对象锁,进入等待此对象的等待锁定池,只...

2020-04-16 18:00:34 176

原创 守护线程理解、创建、应用

注意的是守护线程中产生的线程都是守护线程其实守护线程和用户线程区别不大,可以理解为特殊的用户线程。特殊就特殊在如果程序中所有的用户线程都退出了,那么所有的守护线程就都会被杀死,很好理解,没有被守护的对象了,也不需要守护线程了。启动守护线程也有两种方法,先来看看怎么启动守护线程 。最常用的一种是通过将用户线程转换为守护线程来启动线程从而启动守护线程。thread.setDaemon...

2020-04-16 17:53:06 309

原创 多线程死锁

什么是多线程死锁?答:同步中嵌套同步,导致锁无法释放class ThreadTrain6 implements Runnable { // 这是货票总票数,多个线程会同时共享资源 private int trainCount = 100; public boolean flag = true; private Object mutex = new Object(); @...

2020-04-15 20:59:14 121

原创 如何实现线程安全(线程安全的解决方法,如何实现线程同步)

问:如何解决多线程之间线程安全问题?答:使用多线程之间同步或使用锁(lock)。问:为什么使用线程同步或使用锁能解决线程安全问题呢?答:将可能会发生数据冲突问题(线程不安全问题),只能让当前一个线程进行执行。代码执行完成后释放锁,让后才能让其他线程进行执行。这样的话就可以解决线程不安全问题。问:什么是多线程之间同步?答:当多个线程共享同一个资源,不会受到其他线程的干扰。...

2020-04-15 20:40:23 332

原创 Java多线程基础知识点

一、线程与进程区别 每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务。通常由操作系统负责多个线程的调度和执行。使用线程可以把占据时间长的程序中的任务放到后台去处理,程序的运行速度可能加快,在一些等待的任务实...

2020-04-15 11:52:26 148

原创 什么是线程安全问题?

当多个线程同时共享,同一个全局变量或者静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题。做读操作时不会发生数据冲突问题的。 ...

2020-04-15 10:19:47 1217

原创 免费下载各种json包的网址

网址:http://www.java2s.com/Code/Jar/j/Downloadjsonlib223jdk15jar.htm

2018-12-29 10:56:02 6397 2

原创 雨课堂中的课件如何下载

1.找到你要下载的课件: 2.点击进入该课件: 3.点击打印课件: 4.点击打印: 5.点击更改,弹出一个模态框:6.点击保存: 后面的选择下载地址就略去了啊。。。  ...

2018-11-01 16:33:35 71906 2

原创 Android中ListView等使用的Adapter简介

1.介绍:Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。很多常见的View(如:ListView,Spinner,GridView等)都需要用到Adapter。如下图直观的表达了Data、Adapter、View三者的关系:注意:(1)适配器用来将不同的数据映射到View上。不同的数据对应不同的适配器,如ArrayAdapter,C...

2018-10-31 21:05:55 1730

原创 ASP.NET服务器控件--标准服务器控件

1.Button控件:(1)Button:介绍:当用户单击任何Button服务器控件是,会将该页发送到服务器。这使得在基于服务器的代码中,网页被处理,任何挂起的事件被触发。这些按钮还可以触发它们自己的Click事件,可以为这些事件编写事件处理程序。按钮的回发行为:《1》当用户单击按钮控件时,该页面回发到服务器。默认情况下,该页面回发到其本身,在这里重新生成相同的页面并处理该页面上控...

2018-10-25 17:36:39 1498

原创 ASP.NET服务器控件--HTML服务器控件

1.介绍:默认情况下,ASP.NET文件中HTML元素作为文本进行处理,并不能在服务器端代码中引用这些元素,只能在客户端通过javascript和vbscript等脚本语言来控制。2.HTML INPUT元素的使用:(1)input(Text)控件,文本控件:默认情况下是INPUT type="text"元素。主要属性:Type=text/password、MaxLength、Size...

2018-10-25 17:06:49 1268

原创 Android-实现两个Activity之间的跳转

给按钮绑定单击事件实现Activity的跳转:Button button = (Button)findViewById(R.id.button);button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //方法一 我就直接这种...

2018-10-15 22:02:16 4555

原创 Servlet & JSP 文件上传

1.介绍:文件上传是将客户端的一个或多个文件传输到服务器上保存。2.客户端要求:实现文件上传首先需要在客户端的HTML页面中通过一个表单打开一个文件,然后提交给服务器。上传文件表单的&lt;form&gt;标签中应该指定enctype属性,它的值应该为"multipart/form-data",&lt;form&gt;标签的method属性应该指定为"post",同时表单应该提供一个&...

2018-10-15 21:00:50 169

原创 Servlet & JSP 请求转发

1.介绍:在现实应用中可能需要将请求转发(forward)到其他资源。例如,对于一个登陆系统,如果用户输入了正确的用户名和口令,servlet应该将请求转发到欢迎页面,否则应将请求转发到登陆页面或者错误页面。2.请求转发器对象:为实现请求转发,需要通过请求对象request的getRequestDispatcher()方法得到RequestDispatcher对象,该对象称为请求转发器...

2018-10-15 20:06:21 1448

原创 Servlet & JSP 分析请求

客户客户发送给服务器的请求信息被封装在HttpServletRequest对象中,其中包含由浏览器发送给服务器的数据,这些数据包括请求参数、客户端有关信息等。1.检索请求参数:(1)public String getParameter(String name):如果指定的参数不存在,返回null;如果指定的参数存在,但用户没有赋值,则返回空字符串。使用该方法必须保证指定的参数值只有一个。...

2018-10-15 17:46:10 162

原创 Servlet & JSP 处理HTTP请求

在HttpServlet类,除定义了service()为客户提供服务外,还针对每一个HTTP方法定义了相应的doXxx(),一般的格式如下:protected void doXxx()(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException;HTTP方法及...

2018-10-15 17:28:12 640

原创 Servlet & JSP HTTP请求结构

 1.介绍:由客户向服务器发出的消息叫做HTTP请求。2.请求的结构:(1)请求行:HTTP请求行由三部分组成:方法名、请求资源的URI和HTTP版本(2)请求头:指定请求使用的浏览器信息、字符编码信息以及客户能处理的页面类型等。(3)空行:就是一个空行啊。(4)数据:如果是POST请求方法,则包含请求的数据;而如果是GET请求方法,将不包含请求的数据。3....

2018-10-15 16:34:34 234

原创 Servlet & JSP-Web容器(Servlet容器)

1.介绍:Web服务器使用一个独立的模块装载和运行Servlet与JSP页面,这个模块称为Servlet容器(container),或者称为Web容器。Tomcat就是一个Web容器,它在整个Web应用系统中处于中间层的地位。注意:上图是完整的Web组件示意图,其中HTML文件存储在文件系统中,Servlet和JSP运行在Web容器中,业务数据存储在数据库中。 2.工作原理:...

2018-10-14 09:56:11 1279

原创 C#代表(delegate)

介绍:C#的一个引用类型,delegate也翻译成委托。它实际相当于C语言中的函数指针,于指针不同的是代表是类型安全的。声明格式如下:属性集 修饰符 delegate 函数返回类型 定义的代表标识符(函数形参列表);其中修饰符包括new、public、protected、internal和private。如:public delegate int MyDelegate(); ...

2018-10-13 19:33:13 1455

原创 C#接口

1.介绍:与类一样,接口中可以定义方法、属性、索引指示器和事件。但与类不同的是,接口中仅仅是它们的申明,并不提供实现。因此,接口是函数成员申明的集合。如果类或结构从一个接口派生,则这个类或结构负责实现该接口中所申明的所有成员。一个接口可以从多个接口继承,而一个类或结构可以实现多个接口。2.接口申明的格式:属性 接口修饰符 interface 接口名: 基接口{ .......

2018-10-13 19:12:59 126

原创 C#中的封闭类和封闭方法(sealed)

1.封闭类:sealed class如果不希望自己编写的类被继承,或者有的类已经没有再被继承的必要了,就可以定义为封闭类。封闭类的声明使用sealed修饰符,这样就可以防止该类被其他类继承。由此可知,封闭类不能同时又是抽象类。2.封闭方法:C#还提出了封闭方法(sealed method)的概念。方法使用sealed修饰符,在派生类中不能覆盖基类中的封闭方法。...

2018-10-13 18:46:16 1386

原创 C#抽象类和抽象方法

定义格式:abstract class 类名{ .....}抽象类的使用规定:1.抽象类只能作为其他类的基类,它不能直接被实例化。2.抽象类允许包含抽象成员,但不是必须的。若有抽象成员也要用abstract修饰符修饰。3.抽象类不能同时又是密封的。4.抽象类的基类也可以是抽象类。5.如果一个非抽象类的基类是抽象类,那么必须要通过覆盖来实现所有继承而来的抽象方...

2018-10-13 17:59:18 3354

原创 C#类的多态性

1.编译时的多态性:通过方法重载实现一个类的对象调用若干同名方法,系统在编译时,根据调用方法的实参类型及实参的个数决定调用那个同名方法,实现何种操作。2.运行时的多态性:通过虚方法实现(在方法声明前加上virtual修饰符为虚方法)在系统运行时,不同对象调用一个名字相同,参数的类型及个数完全相同的方法,会完成不同的操作。using System;class A{ pu...

2018-10-13 17:39:12 675

原创 C#操作符重载

 操作符重载,实际是定义了一个操作符函数,操作符函数声明的格式如下:static public 函数返回类型 operator 重新定义的操作符(新参表)1.C#中可重载的操作符:+、-、!、~、++、--、true、false、*、/ 、%、&amp;、|、^、&lt;&lt;、&gt;&gt;、==、!=、&gt;、&lt;、&gt;=、&lt;=等;2.不允许重载的操作符:...

2018-10-13 16:55:57 519

原创 C#静态方法和实例方法

1.静态方法:  用修饰符static声明的方法;注意:(1)不管用类创没创建对象,类的静态方法都可以使用;           (2)静态方法只能使用该静态方法所在类的静态数据成员和静态方法。使用格式:类名.静态方法名;2.实例方法:没有修饰符static声明的方法。注意:实例方法可以使用该方法所在类的所有静态成员和实例成员。使用格式:对象名.实例方法名 ...

2018-10-13 16:40:44 3880 1

空空如也

空空如也

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

TA关注的人

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