Time of Update: 2016-05-07
標籤: 今天一個網友找我幫他最佳化他負責資料庫的SQL,客服反映這個SQL 跑很久,跑了12個小時,最後跑出ORA-01555 ,以報錯結束了這個慢SQL的生命。找我幫他最佳化,OK ,義不容辭。 他們那邊資料庫環境是Oracle 12C的: 原SQL 及其執行計畫為:explain plan forselect count(*)
Time of Update: 2016-05-07
標籤:因為之前寫個stm32的IAP升級程式,所以我總結了做IAP升級的三個主要的痛點:1、如何設定中斷向量,也就是說中斷向量的重新導向2、如何配置程式的起始地址3、如何從IAP跳轉到APP程式4、使用庫函數要注意的地方(防止被坑)說文章的時候我已經完成了一個最簡單的IAP升級程式,可以通過串口接收bin檔案寫入到flash裡面,然後再運行。1、如何設定中斷向量,也就是說中斷向量的重新導向stm8不像stm32那樣有個一寄存器管理著中斷向量的地址,所以stm32的中斷可以任意設定(符合要求的情況
Time of Update: 2016-05-07
標籤:博主是大三的在校大學生,學習電腦的路上,有些自己的感悟,寫下來互相討論下,歡迎吐槽。Java模組與模組之間總是存在這一定的介面,從調用方式上看,可以分為三類:同步調用、回調和非同步呼叫。同步調用是一種阻塞式調用,也是我們在寫程式中經常使用的;回調是一種雙向的調用模式,也就是說,被調用的介面被調用時也會調用對方的介面;非同步呼叫是一種類似訊息或事件的機制,解決了同步阻塞的問題。回調是非同步基本,因此下面著重說回調機制。我理解的Android的回呼函數,在B類(通常為Servic
Time of Update: 2016-05-07
標籤:方法資訊量大小儲存時間應用範圍儲存位置Application任意大小整個應用程式的生命期所有使用者伺服器端Session小量,簡單的資料使用者啟用時間+一段延遲時間(一般為20分鐘)單個使用者伺服器端Cookie小量,簡單的資料可以根據需要設定單個使用者用戶端1.Application對象
Time of Update: 2016-05-07
標籤:泛型:限制類型開發中使用情境: 1.限制集合中的類型,只能檢測方法的調用,因為聲明的泛型只能存在方法中
Time of Update: 2016-05-07
標籤:大意:給定n點,和m條邊的關係圖中的一些邊隨時可能施工導致不能夠通過,所以至少加多少條邊才能夠使得途中任意兩條邊聯通?思路:很明顯只要圖中的任意兩點都是兩條邊來連結即可。那麼我們可以先縮點構建新圖,然後統計出度為1的點的個數ans,那麼需要加的邊數就是(ans+1)/2條;(PS;因為建圖是雙向的圖所以,在Tarjan縮點的時候就需要遇到臨邊便越過,並且判斷是不是同一個聯通分支用num比較!)#include<map>#include<queue>#incl
Time of Update: 2016-05-07
標籤:首先,說一下,已經一個多月沒寫部落格了,並沒有偷懶,而是總覺得時間不夠用,今天仔細想想,寫一篇部落格的時間還是可以擠出來的,只是自己沒有安排好時間而已,畢竟這也算是對學過知識的一種總結,應該堅持,所以從今天開始,我又要繼續了,對自己說一聲,加油!今天對Animation的學習做一個總結:一直覺得動畫很炫酷,學了動畫之後才知道原來是這麼回事!安卓Animation分為兩種:(1)幀動畫 Frame
Time of Update: 2016-05-07
標籤:sqlite和coreData的區別:1.sqlite資料庫的操作流程:建立資料庫,再通過定義一些欄位來定義表格結構,可以利用sql語句向表格中插入記錄,刪除記錄,修改記錄,表格之間也可以建聯絡。sqlite和coreData的類做個對應:表結構--------NSEntityDescription(菜單詳情)資料庫中所有的表格和他們的聯絡--------NSmanagedObjectModel(菜譜)資料庫存放方式---------NSPersistentStoreCoordinator
Time of Update: 2016-05-07
標籤: 第二類:屬性值必須為id的引用名“@id/id-name” 僅RelativeLayout中有效 android:layout_below 在某元素的下方 android:layout_above
Time of Update: 2016-05-07
標籤:1,Bundle一種最簡單的進程間傳遞資料的方式 使用Bundle在進程間傳遞資料(資料要被序列化,基礎資料型別 (Elementary Data Type)都實現了序列化)。Intent intent = new Intent("romote"); Bundle bundle=new Bundle(); bundle.putParcelable(KEY,new Book(1,"wcx"));
Time of Update: 2016-05-07
標籤:關於64k 引用限制的說明Android application (APK) files contain executable bytecode files in the form of Dalvik Executable (DEX) files, which contain the compiled code used to run your app. The Dalvik Executable specification limits the total
Time of Update: 2016-05-07
標籤:我們都知道在主線程(即UI線程)要發送訊息的話,只需要建立一個Handler即可,但你試下在子線程裡面建立一個Handler,然後發送訊息,你會發現程式報如下異常了,“can‘t create handler inside thread that has not called Looper.prepare();”new Thread(new Runnable() {@Overridepublic void run() {Handler mHandler = new
Time of Update: 2016-05-07
標籤: iOS複雜動畫都是和貝茲路徑結合在一起的。因此要學會iOS動畫,必須先理解貝茲路徑。貝茲路徑的教程網上很多,這裡就不過多的闡述。主要還是來講講有關動畫方面的東西。一、畫一條簡單的曲線我們先準備一條波浪形的貝茲路徑: CGPoint startPoint =CGPointMake(50,300); CGPoint endPoint =CGPointMake(300
Time of Update: 2016-05-07
標籤:大意:有n座島和m條橋,每條橋上有w個兵守著,現在要派不少於守橋計程車兵數的人去炸橋,只能炸一條橋,使得這n座島不連通,求最少要派多少人去。思路:我們就是要縮點後直接求橋上人的最少數量。(PS:1、注意圖如果不聯通直接輸出0。2、如果圖中的橋上人為0,個那麼要讓一個人去。3、重邊的問題。這裡可以忽略)#include<map>#include<queue>#include<cmath>#include<cstdio>#include<s
Time of Update: 2016-05-07
標籤:在web開發中,多檔案上傳時是非常方便的,直接使用Http協議提交資料即可。格式如下: <FORM METHOD=POST ACTION="http://192.168.1.101:8083/upload/servlet/UploadServlet" enctype="multipart/form-data"> <INPUT TYPE="text"
Time of Update: 2016-05-07
標籤:學習android5.0以後的ART虛擬機器,看了看源碼,比較頭疼,決定通過動態調試的方式去學習。Art虛擬機器有一個dex2oat的可執行程式。就想到了通過gdb和gdbserver來debug這個dex2oat。記錄一下調試方法:gdb運行在本地系統(windows/linux)gdbserver運行在android真機/模擬器上(adb shell ls
Time of Update: 2016-05-07
標籤:實現Android處理序間通訊執行個體有好幾種方法:1,AIDL2,Broadcast3,Intent4,Content Provider記錄一下AIDL實現Android處理序間通訊的方式:Android的AIDL處理序間通訊實現步驟:一:建立AIDL服務端:aidl檔案,自動產生的介面java檔案,服務servicexxxInterface.aidl (遠程服務的介面定義)package com.example.aidltest;interface
Time of Update: 2016-05-07
標籤:在iOS開發中, 難免會整合別人的三方類庫, 當整合的三方類庫過多時, 難免會出現某些庫同時使用了同樣的函數庫,導致link的時候報錯提示duplicate symbol。詳情見圖:引用第三方庫出現duplicate symbol時的處理方法" TITLE="iOS開發 引用第三方庫出現duplicate symbol時的處理方法" />這樣的報錯讓我們覺得很麻煩, 這樣的檔案重複錯誤, 不是由自己的程式中的代碼造成的, 而是別人的三方類庫,
Time of Update: 2016-05-07
標籤: 在nineoldandroids庫中有三種方式實現控制項的動畫效果。 第一: PROXY_PROPERTIES.put("alpha", PreHoneycombCompat.ALPHA);
Time of Update: 2016-05-07
標籤:第一開機介面替換,即核心bootloader啟動小企鵝介面更換 1、首先找一個自訂120*120的png映像,這裡名稱linux.png,但是後面的ppm名稱必須是圖中所示在linux下執行下面代碼將png轉換為ppm:然後將產生的ppm檔案拷貝到核心logo所在目錄:替換既可 2、重新編譯linux核心,# make zImage