原创 tornado web異步框架 和 nodejs 的異步對比

最近項目中用到tornado 也是新接觸看到裏面的異步實現 事件驅動實現是由IOLoop PollIOLoop 這兩個類來實現 IOLoop運行在主進程裏面 以前看過nodejs的事件循環機制 通過eventloop 保持主線程一直處

原创 python調用c語言動態庫示例

python完美兼容C語言,有了ctypes 可以調用c相關代碼  如果是c++代碼   編譯的時候加上 extern "C" 就可以了 ,如果是一些複雜類型比如結構體,類,聯合一些 可以考慮用boost.python 示例: test

原创 STL vector 類排序

#include <cstdio> #include <vector> #include <iostream> #include <algorithm> #include <iomanip> using namespace std; st

原创 錯誤'undefined symbol: __gxx_personality_v0'

這個錯誤 因爲用c++編譯器編譯的.o文件  然後用gcc去鏈接成的動態庫  導致無法被使用         File "/usr/lib64/python2.6/ctypes/__init__.py", line 431, in L

原创 C 文件操作 簡單代碼

                  分別是棧上分配內存 和 堆上分配內存                   有時候我們如果遇到 頻繁調用這個函數 要不停的去動態分配內存很麻煩 還得手動釋放      

原创 centos 搭建opencv-3.2.0開發環境 測試代碼

 下載opencv-3.2.0安裝包               上傳到linux 上面          編譯opencv-3.2.0 之前 請保證已經安裝好 cmake make python gtk+等 相關工具        

原创 pure-ftpd 搭建自己的FTP服務器

     下載       wget https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.41.tar.gz              解壓安裝    

原创 docker 製作鏡像的兩種方法

docker 製作鏡像的方法 有兩種 1. 通過用dockerfile 來製作鏡像     編寫dockerfile     然後docker build -t xxx:tag .      2. 可以通過docker commit 來

原创 'OSError: .*.so: undefined symbol'

編譯庫文件 : 頭文件重複包含錯誤 ! 排查頭文件 

原创 codis集羣相關

Codis是一個分佈式redis集羣解決方案,對於上層的應用來說, 連接到codis-proxy和連接原生的redis-server沒有明顯的區別。 jiagou圖示如下 codis-redis 是基於開源redis修改了部分內容,

原创 python web 框架tornado-4.4.2 安裝測試

下載tornado-4.4.2 cd tornado-4.4.2 python setup.py build sudo python setup.py install OK 編譯安裝完成  運行一個hel

原创 angluarJS 官方開發環境搭建 官方示例

angluarJS是谷歌一款開源的web前端開發框架,簡單介紹開發環境和示例下載git 打開gitBashgit clone https://github.com/angular/angular-phonecat.git下載goog

原创 redis 客戶端超時時間

/* Check for timeouts. Returns non-zero if the client was terminated. * The function gets the current time in millisec

原创 GDB調試相關命令

轉載來源:http://www.jb51.net/article/36393.htm gdb是一個在UNIX環境下的命令行調試工具。如果需要使用gdb調試程序,請在gcc時加上-g選項。下面的命令部分是簡化版,比如使用l代替list等

原创 C++ 線程基礎

線程可以說是輕型的進程 多線程共享進程的地址空間和資源使得線程的上下文切換優於進程 由於線程共享資源就會有搶佔資源的情況主要的手段有 互斥鎖 ,條件變量 ,信號量等等 簡單回顧下C++ 多線程  #include <pthread.h