在路徑
system/core/init/
中加了一些列印需要進行除錯,發現加了之後總是列印不出來。
我使用的是列印函式是:
log(info)
寫了乙個測試列印的**:
for
(int k=
0;k<
100;k++
)
結果發現只列印了2行出來。很奇怪。
加了很大的延遲之後才能正常列印出來。
log這個函式為什麼這樣呢? 沒有搞明白。!!!
嘗試使用linux標準的列印,printf ,cout,發現無法列印。
這個網上有解釋:
linux系統為每個使用者程序預設開啟了3個檔案,即標準輸入、標準輸出及錯誤輸出,並且分配了檔案描述符,與前三個檔案一一對應,分別是0、1、2三個
init程序其實就是linux的使用者程序,只不過他是第乙個,因此,也符合這個規定。
看** 標準的輸入、輸出被重定向了:
system/core/init/log.cpp
void
initkernellogging
(char
* ar**)
dup2
(fd,0)
;dup2
(fd,1)
;dup2
(fd,2)
;if(fd >2)
close
(fd)
; android:
:base:
:initlogging
(ar**,
&android:
:base:
:kernellogger, initaborter)
;}
dup2對標準輸出進行了重定向
我把重定向的**注釋掉,標準的輸出函式可以列印出來了。
void
initkernellogging
(char
* ar**)
dup2(fd, 0);
dup2(fd, 1);
dup2(fd, 2);
if (fd > 2) close(fd);
*/ android:
:base:
:initlogging
(ar**,
&android:
:base:
:kernellogger, initaborter)
;}
暫時先這樣,先除錯問題。 關於列印頁面的一些經驗
大家經常遇到再ie中列印 時需要隱藏一些不需要列印的物件,比如說按鈕,輸入框,或者希望莫個 顯示的時候 線是由顏色的,而列印的時候只需要有粗細之分,其實在css中可以設定在列印或者顯示的不同樣式,最近作了乙個應用 實屬逼上梁山 可以得到以上效果,下面是我的樣式表。大家仔細看一下其實只要建立2個sty...
一些人,一些事,一些
我覺得這是國內it企業浮躁和傳統的官本位性質決定的,導致國內企業都本末倒置。要想改變命運,我覺得有以下出路 1.不做技術了,改做混混 混混的概念很廣泛的,比如銷售 經理 幹部 皮包公司之類其實都屬於這類。中國就是這樣,越浮越掙錢,只有混混才能發財。要不更進一步,做流氓,廣義的流氓,也很不錯。2.專心...
POS印表機一些特殊控制
procedure tform1.button1click sender tobject varrprinter textfile i integer begin assignfile rprinter,lpt1 rewrite rprinter for i 0 to memo1.lines.cou...