自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Python GIL理解及对多线程的影响

In在这里我想强调的是,存在 GIL存在 GIL虽然有这么多 Python 解释器,但使用最广泛的依旧是官方提供的 CPython,它默认是有 GIL 的。其实,由于 Python 的线程就是 C 语言的 pthread,它是通过操作系统调度算法调度执行的。Python 2.x 的代码执行是基于 opcode 数量的调度方式,简单来说就是每执行一定数量的字节码,或遇到系统 IO 时,会强制释放 GIL,然后触发一次操作系统的线程调度。虽然在 Python 3.x 进行了优化,基于。

2023-06-21 13:06:48 849 1

转载 JDK,JRE,JVM关系及JVM的作用

JDK(Java Development Kit),它是功能齐全的 Java SDK,是提供给开发者使用的,能够创建和编译 Java 程序。JVM 有针对不同系统的特定实现(Windows,Linux,macOS),目的是使用相同的字节码,它们都会给出相同的结果。因此,Java 虚拟机不仅是 Java 程序的执行引擎,也是一种全面的管理和优化工具。这个就是 Java 虚拟机的由来,JVM 是 Java 中非常重要的概念,帮你屏蔽掉了 Java 针对硬件环境中的各种痛点和不适。得到的是经常性的空对象异常。

2023-06-20 17:04:51 109

转载 TCP/IP Socket TCP/UDP HTTP基本概念

3、连接确认:当服务器端套接字监听到或者说接收到客户端套接字的连接请求时,就响应客户端套接字的请求,建立一个新的线程,把服务器端套接字的描述发给客户端,一旦客户端确认了此描述,双方就正式建立连接。实际上,传输层的TCP是基于网络层的IP协议的,而应用层的HTTP协议又是基于传输层的TCP协议的,而Socket本身不算是协议,就像上面所说,它只是提供了一个针对TCP或者UDP编程的接口。1、服务器监听:服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态,等待客户端的连接请求。

2023-04-24 11:06:37 119

转载 HTTP与TCP长连接区别及基本原理

由于 HTTP 是基于 TCP 传输协议实现的,客户端与服务端要进行 HTTP 通信前,需要先建立 TCP 连接,然后客户端发送 HTTP 请求,服务端收到后就返回响应,至此「请求-应答」的模式就完成了,随后就会释放 TCP 连接。HTTP 的 Keep-Alive 也叫 HTTP 长连接,该功能是由「应用程序」实现的,可以使得用同一个 TCP 连接来发送和接收多个 HTTP 请求/应答,减少了 HTTP 短连接带来的多次 TCP 连接建立和释放的开销。这样做,连接就不会中断,而是保持连接。

2023-04-24 10:34:37 726

转载 Repost: gcc和g++区别

GCC的gcc和g++区别看的Linux公社的一篇文章,觉得不错,内容复制过来了。其实在这之前,我一直以为gcc和g++是一个东西,只是有两个不同的名字而已,今天在linux下编译一个c代码时出现了错误才找了一下gcc和g++的区别。先描述一下今天遇到的错误:因为以前写程序的时候,写的都是cpp文件,然后就直接使用g++编译,没出错,也就没有在意过这些问题,今天有一个c文件,但

2016-05-02 17:05:06 502

转载 copy, 仅供自己参考: arm-linux-gcc ELDK使用 cross compiler

http://blog.sina.com.cn/s/blog_6e9377ed0100mdav.html 写下自己构建arm-linux交叉编译环境的过程,免得忘了。我的机器环境:winxp主机,visualBox虚拟机,ubuntu9.04(装在虚拟机里)1. 下载eldk(Embedded Linux Development Kit),我用的是arm-2008-11-2

2015-10-20 16:45:07 683

转载 关闭页面之前 提示用户(确定跳转,取消停留)----使用window.onbeforeunload

Detecting When The User Has Clicked Cancel One of the things you may want to do is to be notified when the user clicks cancel, aborting a page unload. Unfortunately there's no way to be immediatel

2014-10-21 16:45:45 4250

转载 重载(overload)、覆盖(override)、隐藏(hide)

这三个概念都是与OO中的多态有关系的。如果单是区别重载与覆盖这两个概念是比较容易的,但是隐藏这一概念却使问题变得有点复杂了,下面说说它们的区别吧。       重载是指不同的函数使用相同的函数名,但是函数的参数个数或类型不同。调用的时候根据函数的参数来区别不同的函数。       覆盖(也叫重写)是指在派生类中重新对基类中的虚函数(注意是虚函数)重新实现。即函数名和参数都一样,只是函数的实

2014-06-24 22:00:48 468

转载 多浏览器支持JAVA applet的方法(<object>嵌套)

由于不同的浏览器在实现加载JAVA applet

2014-05-08 17:13:18 1832

转载 浏览器显示网页的原理 多种情况方式

看到一篇一、标准的网址:域名+目录+文件名称   首先我们来看看最标准的网址的书写格式,例如盐城市科委网络中心的某一网页的网址为:http://www.chinayancheng.net/zxxw/001.htm,,其中www.chinayancheng.net为计算机域名,zxxw为该计算机根目录下的一目录,001.htm为zxxw目录下的一个具体的文件。当我们在浏览器的地址栏里输入以上

2014-04-19 16:30:15 1568

转载 VC中加载使用外部Lib DLL库的设置方法

在VS工程中,添加c/c++工程中外部头文件及库的基本步骤:    1、添加工程的头文件目录:工程---属性---配置属性---c/c++---常规---附加包含目录:加上头文件存放目录。    2、添加文件引用的lib静态库路径:工程---属性---配置属性---链接器---常规---附加库目录:加上lib文件存放目录。         然后添加工程引用的lib文件名:工程---属性

2014-03-25 21:53:50 4906

原创 高效率处理某一字符分隔的数字型字符串---strtod()

逗号分隔的长字符串,判断逗号之间是否都是有效合法数值,可能含有字母、空格、科学计数法等:尝试了好几种方法 比如逐个判断,strtok stof, 正则表达式,try catch{}等方法,效率比较低,现在使用strtod():如果字符串是空的或者都是由空格组成,将不会做任何转换,仅仅是把字符串的结束地址赋给endptr。如果字 符串合法,将会进行转换,并把字符串最后的NULL的地址给e

2014-03-24 21:45:29 824

原创 虚拟机 apache CGI

今日调通了虚拟机Fedora上的Apache,运行CGI注意4个问题:1. 关闭Selinux 及防火墙2. Apache的配置文件httpd.conf: Directoryroot ScriptAlias /cgi-bin/ CGI文件必须放在ScriptAlias指定路径下 当然应该可以设置添加其他路径3. CGI 源文件的输出头:Content-type:text/html\

2014-03-17 17:15:44 454

原创 CGI问题:500 Internal Server Error

错误提示:[error] (13)Permission denied: exec of /usr/local/apache2/cgi-bin/test-cgi failed[error] [client xxx.xxx.xxx.xxx] Premature end of script headers: 解决办法:(1)关闭SElinux以及防火墙        防火

2014-03-17 16:21:47 6196 1

转载 JAVA菜单快捷键

子菜单类JMenuItem有一个方法不知道你注意过没有:setAccelerator。打开帮助文件对这个方法的描述是: 设置组合键,它能直接调用菜单项的操作侦听器而不必显示菜单的层次结构。所以用这个方法就能制作我们所要的快捷键了。帮助文件告诉我们,传给setAccelerator方法所要的是一个KeyStroke,下面来说说这个类:KeyStoke在Javax.swing包下,他的作用

2014-03-07 14:33:16 9203

转载 虚拟机设置为“Bridged Adapter”时,下面的“名称”显示“未指定” 解决方法。

1.在刚装好的虚拟机的网络设置界面如下图,当链接方式为“Bridged Adapter”的时候,下面的“名称”显示“未指定”,而且在下面有错误提示如“发现无效设置”和“在 网络:网络连接 1 页,未指定要bridged的主机网络界面”。2.这是因为 Windows 7 系统中没有安装 VirtualBox 的桥接服务驱动(也可能是我用绿色版本的原因),接下来将要安装驱动。3.打

2014-03-07 11:07:16 3325

原创 VirtualBox 开机自动挂载共享文件夹

1. 设置共享文件夹2. 网上很多资料说是在/etc/fstab文件中加文件夹共享挂载命令"sharing /mnt/share vboxsf defaults 0 0”等等,实际上这种做法是错误的。    因为系统调用fstab的时候,Virtualbox的共享目录的模块还没有加载。   正确的做法是:在文件 /etc/rc.local 中(用root用户)追加如下命令 mount

2014-03-06 17:11:46 856

转载 Oracle VirtualBox 安装增强工具包:“building the main guest additions module 失败” 原因及解决方法

在 Oracle Linux 上安装 Shared Folders对于 Oracle Database 11g,ZIP 安装文件总共有 2 GB 多。由于需要从每个来宾 VM 访问它们以安装数据库,我决定利用 Oracle VM VirtualBox 的 Shared Folders。Shared Folders 特性允许来宾 VM 访问主机文件系统中的存储,因此它允许我对每个 VM 都访问相

2014-02-26 15:12:34 8046

转载 Oracle VirtualBox中安装Fedora 15步骤

链接源自:http://bbs.kafan.cn/thread-1014662-1-1.htmlFedora Linux由Fedora Project社群开发、红帽公司赞助的知名发行版Fedora基于Red Hat Linux,是红帽公司取代Red Hat Linux在个人领域的应用的发行版fedora项目的官方地址为: http://fedoraproject.org/中文项

2014-02-26 14:55:05 633

转载 字符数组与字符指针

1. 以字符串形式出现的,编译器都会为该字符串自动添加一个0作为结束符。   如在代码中写"abc",那么编译器帮你存储的是"abc\0"。2. "abc"是常量吗?-----------注意字符串的存储形式  答案是有时是、有时不是。   (1)不是常量的情况:"abc"作为字符数组初始值的时候就不是,如:   char str[] = "abc";   

2014-02-18 22:21:44 370

原创 安装jre时:This software has already been installed on your computer. Would you like to reinstall”

安装jre时可能出现错误:This software has already been installed on your computer. Would you like to reinstall it?This action is only valid for products that are currently installed.原因是由于之前错误的安装或者卸载,然后使用

2014-02-14 16:23:38 1606

原创 为什么需要对applet进行数字签名(digital signature)

Java applets are designed to run in a restricted environment known as Sandbox. This confinement helps avoid malicious activities and breach of security from intentionally harmful applets. Therefore,

2014-02-13 22:38:35 762

空空如也

空空如也

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

TA关注的人

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