原创 Python雜談: __init__.py的作用

我們經常在python的模塊目錄中會看到 "__init__.py"  這個文件,那麼它到底有什麼作用呢?   1. 標識該目錄是一個python的模塊包(module package)   如果你是使用python的相關IDE來進行開發

原创 python線程join的作用

幾個事實 1 python 默認參數創建線程後,不管主線程是否執行完畢,都會等待子線程執行完畢才一起退出,有無join結果一樣 2 如果創建線程,並且設置了daemon爲true,即thread.setDaemon(True), 則主線程

原创 python的時間模塊

python有兩個重要的時間模塊,分別是time和datetime 先看time模塊 表示時間的幾種方法: 1)時間元組:time.struct_time(tm_year=2016,   tm_mon=7,    tm_mday=21,

原创 多線程

#coding:utf-8 import time, threading # 假定這是你的銀行存款: balance = 0 def change_it(n):     # 先存後取,結果應該爲0:     global balance

原创 聊一聊DDR3中的ODT(On-die termination)

ODT是什麼鬼?爲什麼要用ODT?在很多關於DDR3的博文和介紹中都沒有將清楚。在查閱了很多資料並仔細閱讀DDR3的官方標準(JESD79-3A)之後,總算有點了頭緒,下面來整理整理。 1、首先ODT是什麼? ODT(On-Die Ter

原创 SWIG 和 Python——c/c++與腳本交互

C 和 C++ 被公認爲(理當如此)創建高性能代碼的首選平臺。對開發人員的一個常見要求是向腳本語言接口公開 C/C++ 代碼,這正是 Simplified Wrapper and Interface Generator (SWIG) 的用

原创 LOG系統

#! /usr/bin/env python # coding: utf-8 import os import logging   class MyLogger(logging.Logger):     def __init__(self

原创 線程同步(信號量和互斥量的區別)

“信號量用在多線程多任務同步的,一個線程完成了某一個動作就通過信號量告訴別的線程,別的線程再進行某些動作(大家都在semtake的時候,就阻塞在 哪裏)。而互斥鎖是用在多線程多任務互斥的,一個線程佔用了某一個資源,那麼別的線程就無法訪問,

原创 SSD背後的祕密:SSD基本工作原理

SSD主要由SSD控制器,FLASH存儲陣列,板上DRAM(可選),以及跟HOST接口(諸如SATA,SAS, PCIe等)組成。 SSD主控通過若干個通道(channel)並行操作多塊FLASH顆粒,類似RAID0,大大提高底層的帶寬

原创 C語言高級部分

一、內存大話題 1.0、內存就是程序的立足之地,體現內存重要性。 1.1、內存理解:內存物理看是有很多個Bank(就是行列陣式的存儲芯片),每一個Bank的列就是位寬 ,每一行就是Words,則存儲單元數量=行數(words)×列數(位寬

原创 C語言內存對齊

當你看到這個標題,仍想往下讀的時候說明你已經開始關注數據在內存存儲問題了。 好吧,下面先想一個問題: struct  stu{ char sex; int length; char name[10]; }; sizeof (struct

原创 source insight使用技巧

source insight 自定義菜單 打開base工程,編輯utils.em文件,把下面的函數添加到文件末尾 在Options-->menu assignment,  左邊選擇Macro:Comments_orUn_gx   右邊選擇