- 博客(48)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 golang获取执行文件目录
代码编译称为可执行文件后,我们可以在不同的文件目录下执行。例如,在windows下假如系统环境变量后,可以在任意目录下执行。但是,大部分程序往往需要加载配置文件,如果在代码中使用了相对路径的话,运行该执行文件时就会报错了。可执行文件默认以运行该程序的目录为工作目录。例如,我们将可执行文件放在:D:/User/go/src/github.com/kangbb/picture-mark它有一个...
2019-06-15 23:03:49
4822
原创 Word书写Latex之Aurora的安装总结
Aurora是一款可以实现Word插入Latex公式的插件,尤其是写伪代码的不二之选。由于其已经停止维护,而且最后一个版本距离今天已经过去12年,安装使用过程难免出现各种问题。我在安装使用过程中,也出现了各种问题,现在总结如下。实用的安装教程及参考如何在Word中优雅地插入伪代码Aurora | Latex in word令人烦恼的Problems running LaTex首先,你...
2019-05-18 13:59:55
12812
22
原创 Windows下python pip升级失败的解决方案
Windows下升级pip推荐的方式为:$ python -m pip install --upgrade pip这样操作却往往会出现下面的错误:Exception:Traceback (most recent call last): File "D:\Kangbeibei\python_project\datamining-learning\decision_tree\ve...
2018-05-24 17:05:46
4759
转载 golang 反射(reflect)
golang 反射(reflect)反射是现代程序必备的元素,用于在 运行时 获取程序元素,如对象等的 元数据,实现动态识别类型及其结构,以及相关的语义信息。反射在程序中应用非常多,例如:动态生成数据:json 序列化/反序列化; orm 映射, proxy 透明代理对象动态调用方法:plugin 实现...
2018-05-14 02:14:29
1139
转载 golang defer 使用小结与注意要点
关于延时调用函数(Deferred Function Calls)延时调用函数的语法如下:defer func_name(param-list)当一个函数调用前有关键字 defer 时, 那么这个函数的执行会推迟到包含这个 defer 语句的函数即将返回前才执行. 例如:func main() { defer fmt.Println("Third") ...
2018-05-13 13:37:58
1761
2
转载 Golang错误和异常处理的正确姿势
序言错误和异常是两个不同的概念,非常容易混淆。很多程序员习惯将一切非正常情况都看做错误,而不区分错误和异常,即使程序中可能有异常抛出,也将异常及时捕获并转换成错误。从表面上看,一切皆错误的思路更简单,而异常的引入仅仅增加了额外的复杂度。 但事实并非如此。众所周知,Golang遵循“少即是多”的设计哲学,追求简洁优雅,就是说如果异常价值不大,就不会将异常加入到语言特性中。错误和异常处理是程序...
2018-05-13 13:25:36
1097
转载 Golang-函数式编程(闭包)
github:https://github.com/ZhangzheBJUT/blog/blob/master/closure.md 一 函数式编程概论在过去近十年时间里,面向对象编程大行其道,以至于在大学的教育里,老师也只会教给我们两种编程模型,面向过程和面向对象。孰不知,在面向对象思想产生之前,函数式...
2018-05-13 13:02:41
480
转载 Go的异常处理 defer, panic, recover
Go的异常处理defer, panic, recover 文章转自:http://www.cnblogs.com/ghj1976/archive/2013/02/11/2910114.htmlGo语言追求简洁优雅,所以,Go语言不支持传统的 try…catch…finally 这种异常,因为Go语言的设计者们认为,将异常与控制结构混在一起会很容易使得代码变得混乱。因为开发者很容易滥用...
2018-05-13 12:59:09
355
原创 多个div排列在同一行而不换行
有时候,我们可能会产生多个div标签横向排列而不换行的需求,具体有以下几种实现方法:1. 同级div设置display:inline-block,父级div强制不换行例如:<html><head></head><body> <div id="container"> <div class="lable">测试测试</div> <div class="lable">测试测试</d
2018-05-09 02:49:33
35079
原创 关于Dockerfile的ADD命令
添加文件例如:ADD my.cnf /etc/mysqlADD my.cnf /etc/mysql/以上两条命令均可以将my.cnf文件添加到/etc/mysql文件夹下面。添加文件夹Dockerfile添加文件夹,则必须镜像中存在和当前文件夹同名的文件夹才行。例如,我希望将当前目录下的views文件夹添加到docker镜像中的app文件夹下。也许你会采用这样的方式...
2018-05-06 02:56:13
20481
原创 docker nginx 配置反向代理和负载均衡
1. 获取及配置nginx 如果需要全站通过docker部署,那么nginx或许是不可或缺的。通过配置nginx,可以迅速实现负载均衡和反向代理服务。值得一提的是,docker官网恰好也有nginx镜像。通过以下命令获取:$ docker pull nginx:latest nginx镜像的配置和正常使用时是一样的,一般都是在/etc/nginx/conf.d目录下建立自己的f...
2018-04-07 16:28:28
3727
原创 Dokcer网络简介
网络的启动与参数配置 首先,运行如下命令:$ sudo service docker start 如果你是第一次启动docker网络,此时会默认建立一个docker0虚拟网桥。它实质上相当于一个二层网络交换机,可以实现局域网(LAN)之间的数据转发。在linux上,可以通过命令ifconfig命令查看。 通过上图可以得知,docker0的网络配置情况如下: ...
2018-04-06 14:03:34
589
原创 docker-compose网络设置之networks
networks使用方式之官网教程 官网的docker-compose.yml参考文档:Compose file version 3 reference 较为准确的中文翻译版:Compose file version 3 reference networks通常应用于集群服务,从而使得不同的应用程序得以在相同的网络中运行,从而解决网络隔离问题。这种应用在swarm部署中,...
2018-04-06 05:36:57
139714
8
原创 Docker关于mysql镜像的使用
获取镜像可以通过运行以下命令实现:# 查看镜像的版本$ sudo docker search mysql# 获取最新版本的mysql镜像$ sudo docker pull mysql:latest了解镜像mysql镜像# docker history [OPTIONS] IMAGE查看镜像分层$ sudo docker history mysqlIMAGE ...
2018-04-05 23:49:28
2698
3
原创 ubuntu安装程序常用方式及指令
获取安装包的方式采用weget命令,例如获取node.js的安装包:$ wget https://nodejs.org/dist/v8.11.1/node-v8.11.1-linux-x64.tar.gz采用curl的方式,获取安装包内容,直接进行安装。例如安装docker-compose:$ curl -L https://github.com/docker/co...
2018-04-04 13:22:34
1794
原创 docker构建镜像问题之工作目录和入口文件问题
docker 构建时遇到的问题执行docker build之后,显示can't load package: package .: no Go files in /go构建完毕后,在本地可以完美执行,但是在travis cli集成工作上构建后无法工作,报错:docker: Error response from daemon: invalid header field value "oci ...
2018-04-04 02:13:38
4053
原创 Vue学习之Vue插件编写
虽然,相比于React、angular、Knockout等框架,Vue.js起步较晚,但是,它集成了大量其他框架的优点,目前已经成为目前广泛应用的一个前端框架。在他的社区,也活跃着大量的第三方插件。 不过,偶尔我们也会用到原生的javascript库或者插件。如何在Vue.js框架中引入这些非Vue库或插件呢?笔者认为主要有以下两种方式: 第一种,利用Vue提供的生命周期钩子函数,在不
2018-01-31 23:40:20
2085
原创 Vue学习之初识Vue框架
Vue简介 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。 以上内容来自:Vue官方教程渐进式框架
2018-01-30 10:16:07
2954
原创 golang学习之negroni/gizp源码分析
在 Go 语言里,Negroni 是一个很地道的 Web 中间件,它是一个具备微型、非嵌入式、鼓励使用原生 net/http 库特征的中间件。利用它地Use功能,我们可以很简单地自定义中间件并使用。其中,gzip就是一个很好地例子,它实现了服务器对gzip的响应。
2017-12-07 13:23:50
734
原创 golang学习之negroni对于第三方中间件的使用分析
negroni本身是一个中间件,不过它也提供了拓展,以帮助我们更简单地实现自己想要的功能的中间件。那么,我们究竟该如何实现中间件,才能能够封装到negroni中,从而通过negroni来调用呢?可以通过一个简单的例子分析。
2017-12-07 13:14:51
2197
原创 golang学习之web服务流程分析
对于golang而言,要搭建一个服务器端十分简单,仅仅只需几十行代码就可以实现。但是,go是如何通过这样简短的代码就完成了服务器端的搭建呢?我们可以通过分析源码了解其中的秘密。
2017-12-07 02:50:37
600
原创 golang学习之Interface类型断言
Interface作为go语言中一个重要的组成部分,它的使用简单方便。它的通常和struct一起使用,有点类似C++中的类。今天,我们主要来讨论一下它在类型断言中的用法。
2017-12-07 00:03:25
4214
原创 go语言学习之gzip包解读
打开浏览器浏览网页时,我们可以看到各种各样的文字、图片、视频等等各式各样的信息。那么浏览器是怎样和服务器交互这些信息的呢?通过分析不难发现,这些信息往往要经过统一编码之后,才进行传递。今天,我们来通过分析gzip过滤器,了解gzip压缩的实现,进而去实现自己编码网页信息。
2017-12-05 13:44:56
1712
原创 Go如何按行读取文件及bufio.Split()函数的使用
最近初接触了go这门语言,为了更加深入学习,完成了一个项目。将一个c语言实现的linux读取文件行命令程序修改为go语言实现。这里总结一下golang如何按行读取和按页读取,以及bufio.Split()函数的使用。
2017-10-20 03:26:31
7453
原创 C++学习笔记
1. warning:deprecated conversion from string constant to ‘char *’解决方案源代码如下:char *str = "I love math."然后出现了warning。原因是: char *背后的含义是:给我个字符串,我要修改它。 而理论上,我们传给函数的字面常量是没法被修改的。 所以说,比较和理的办法是把参数类型修
2017-09-30 11:19:22
602
1
原创 web学习笔记(一)
区分以下标签: <b></b> 代表粗体,仅仅从样式上加粗文本 <strong></strong> 加粗的同时,带有强调文本内容的意味 <i></i> 代表斜体,仅仅从样式上使文本变为斜体 <em></em> 变文本为斜体的同时,带有强调文本内容的意味 W3C标准更加推荐strong和em标签的使用。
2017-09-19 08:56:20
455
原创 Python Scrapy学习之pipelines不能保存数据到文件问题
使用scripy的pipelines方法保存数据到文件,常常会遇到无法实现但是又不会报错的问题。这里,介绍了三个主要原因。
2017-07-24 18:17:44
7092
12
原创 操作系统实验七之有限缓冲问题
利用有限缓冲问题的解决思想,实现生产者消费者问题,主要利用线程同步机制完成。使用三个信号量: empty (以记录有多少空位)、full (以记录有多少满位)以及mutex (二进制信号量或互斥信号量,以保护对缓冲插入与删除的操作)。对于本项目, empty 与full 将采用标准计数信号量,而mutex 将采用二进制信号量。
2017-07-04 16:13:46
2315
原创 Cache控制器的设计
实现Cache(数据Cache)及其地址变换逻辑(也叫Cache控制器),采用直接相联地址变换,CPU从Cache读数据,若读不到,还必须考虑先从主存中读取数据,然后再将数据写到Cache中,之后,将数据送往CPU;其次,CPU还要向存储器写数据。
2017-07-04 15:39:32
2733
# 响应式布局和固定宽高混用问题
2022-05-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人