趣果有间

凡人皆无法挡


  • 首页

  • 关于

  • 归档

  • 标签

  • 搜索

Linux的死锁检测

发表于 2017-08-02 | 阅读次数

死锁

死锁的四大原因就不多说了

  • 互斥
  • 不可剥夺
  • 占有并等待
  • 循环等待

死锁:就是多个进程(≥2)因为争夺资源而相互等待的一种现象,若无外力推动,将无法继续运行下去。

注意,只有在多进程或者多线程之间或者他们与中断之间相互通讯或者共享资源才有可能发生死锁,单线程或者进程之间没有联系的话,一般不会发生死锁。

锁的种类比较多,这里主要说自旋锁和信号量。两者的差别就在于前者获得不到资源时的动作是不断的资源(即忙转浪费 cpu 的 cycles)而后者则表现为睡眠等待。

阅读全文 »

填坑-排序算法优化

发表于 2017-07-11 | 阅读次数

排序算法优化

之前挖的一个坑 ,填一下

阅读全文 »

总结一下大三下

发表于 2017-07-10 | 阅读次数

大三下的总结

好久没写博客了,上次消失还是兴致勃勃的去写Go结果写了个PHP后台

  • 看完:《Linux内核设计与实现》《Unix网络编程卷一》《深入理解计算机系统》《群山回唱》《康拉德小说选》

  • 正在看:《Unix网络编程卷二》《C++并发编程》《Effective C++》《链接器与加载器》《剑指offer》《正则表达式经典实例》(看了两年了😂)

  • 学习新的语言:golang lua php

  • 掌握新的技能:docker 设计模式 python数据挖掘

  • 阅读源码:lua(gc部分)Nginx libevent

  • 要看的源码:fishhook libco

  • 完成项目:

buffalo-Linux下HTTP服务器

撮虾子-PHP开发兼职APP安卓后台

  • 准备项目

打算把毕业设计的项目定为下面的其中一个:

设计一个数据库

开发一个IOS应用

继续完善buffalo

在 docker 上搭建 Go RESTful 服务

发表于 2017-06-15 | 阅读次数

安装docker

我的环境是macOS,直接在官网下载安装包

我安装的是docker for macOS

阅读全文 »

搭建一个简单的 Go RESTful 服务

发表于 2017-06-14 | 阅读次数

Go RESTful

由于是搭建一个简单的RESTful,直接上代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package main
import (
"fmt"
"net/http"
)
func main() {
http.HandleFunc("/hello", hello)
http.ListenAndServe(":8080", nil)
}
func hello(w http.ResponseWriter, r *http.Request) {
name := r.FormValue("name")
if len(name) == 0 {
name = "Stranger"
}
fmt.Fprintf(w, "Hello, %v", name)
}


阅读全文 »

开始做一个Gopher

发表于 2017-06-12 | 阅读次数

背景

最近因为准备要做一个安卓APP项目,然后我负责的是服务端的搭建

再三考量之后,没有选择现有的后端云平台,而是选择自己搭建一个(其实就是因为我不想和他们去写JAVA啊~)

再三考量之后,PASS掉了不熟悉的JAVA、Nodejs、Ruby等比较流行的后端语言,也没有选择熟悉的C++、python,更没有选择世界上*的编程语言PHP,而是选择了萌萌的Golang

阅读全文 »

C++设计模式一一行为型模式

发表于 2017-06-05 | 阅读次数

行为型模式

我们这里介绍两种对象行为型模式

  • COMMAND 命令模式

  • OBSERVER 观察者模式

阅读全文 »

C++设计模式一一结构型模式

发表于 2017-06-04 | 阅读次数

结构型模式

我们这里介绍两种结构型模式

类对象结构型

  • ADAPTER 适配器模式

对象结构型

  • COMPOSITE 组合模式
阅读全文 »
123…10
kelele67

kelele67

古老却神奇的shell表白代码 :(){:|:&};:

74 日志
71 标签
GitHub 微博 知乎
© 2017 kelele67
由 Hexo 强力驱动
主题 - NexT.Pisces