流程如下:
setoomadj
--> framework/base/core/jni/android_util_process.cpp
android_os_process_setoomadj
-->kernel/fs/proc/base.c
inf("oom_score", s_irugo, proc_oom_score),
reg("oom_adj", s_irugo|s_iwusr, proc_oom_adjust_operations),
reg("oom_score_adj", s_irugo|s_iwusr, proc_oom_score_adj_operations),
-->kernel/fs/proc/base.c
static const struct file_operations proc_oom_adjust_operations = ;
--> kernel/fs/proc/base.c
copy_from_user(buffer, buf, count)
err = kstrtoint(strstrip(buffer), 0, &oom_adjust);
task->signal->oom_adj = oom_adjust; //warn,oom_adj is deprecated
task->signal->oom_score_adj = (oom_adjust * oom_score_adj_max) -oom_disable;
說明:ams呼叫setoomadj設定某程序的adj值,
通過jni介面寫到oom_adj檔案裡,
這個檔案是在base.c裡註冊的檔案,裡面有個oom_adjust_write方法
該方法將這個值賦給task->signal->oom_score_adj
wxVectorProperty 屬性的設定
用wx中屬性網格屬性設定時遇到了些麻煩。為了設定編輯器中模型的3d座標,在屬性網格中加了3d座標屬性。但是在設定wxvectorproperty,不知道如何設定。後來在wxpropertygridproperties檔案中找到了這個巨集wx pg declare variant data wxvec...
android layout weight設定解讀
參考文章 android layout weight的真實含義是 一旦view設定了該屬性 假設有效的情況下 那麼該 view的寬度等於原有寬度 android layout width 加上其在剩餘空間中的佔比!設螢幕寬度為l,在兩個view的寬度都為match parent的情況下,原有寬度為l...
Android RecyclerView設定空布局
1 自定義乙個emptyrecyclerview繼承recyclerview 2 採用adapterdataobserver觀察者模式來監聽資料的變化,如果有資料就隱藏空布局,反之,則顯示。view memptyview private adapterdataobserver emptyobserv...