今天偵錯工具,發現在ie下調用window.showModalDialog方法時,第一次會進後台Page_Load方法,第二次點擊就不進去了。感覺可能是緩衝問題,網上一搜還真是。在頁面的在<head></head>中加入 <META HTTP-EQUIV="Pragma"CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control"CONTENT="no-cache">
WinDBG的遠端偵錯由服務端和用戶端組成,和visualstudio類似。 被調試的機器是服務端(server), 我們做調試的機器是用戶端(client)。 兩台機器都需要安裝WinDBG。第一步, 建立WinDBG server 端。使用 -server參數可以使WinDBG以伺服器方式啟動。 WinDBG可以用多種連線協定讓用戶端串連,比如具名管道(named pipe),安全管道(secure pipe), TCP協議(socket), SSL協議,串口/並口(COM port)等等。
因為需要寫一些DLL,且DLL編譯選擇/MT方式,DLL會匯出函數,函數中會返回指標。 如下所示:(樣本僅供參考,呵呵) int * WINAPI Export() { return new int; } 現在我的EXE中會使用這個函數,代碼如下:(如何擷取函數地址的方法我就不贅述) int *p = Export(); 然後我在使用完後我直接在EXE中調用 delete
一般大家都使用CreateToolhelp32Snapshot來擷取當前系統所有進程的資訊,而且網上的例子大都是告訴大家怎麼擷取系統所有進程資訊。因今天遇到一個問題,需要擷取指定進程ID的詳細資料,因各種許可權原因,只能使用CreateToolhelp32Snapshot 進行擷取,現在相關代碼貼一下,希望對你有協助。 void GetProcessInfo(const DWORD cdwProcessID) {//參數合法性自行判定....
2 使用
在看HADOOP的時候認識了Doug Cutting,Hadoop 團隊早在 06 年就成立了,當然,這個團隊成立的前提是 Doug Cutting 入職雅虎。於是上網一查才知道他就是著名的全文檢索搜尋引擎 Lucene 和 Nutch的創始人。下面是Doug Cutting Interview的原文,譯文在網上一搜就有了Doug Cutting is primary developer of the Lucene and Nutchopen source search projects.
國慶長假總結 轉載時請註明出處和作者連絡方式:http://blog.csdn.net/absurd作者連絡方式:Li XianJing <xianjimli at hotmail dot
書上的例子是為了取出一年當中氣溫最高的值,那麼將年份和氣溫做了一個複合的key. 1 通過設定了partitioner來進行分區。因為分區是按照年份來進行,所以同年的資料就可以分區到一個reducer中。2 自訂key比較子,按照年份升序,溫度值降序。這樣map輸出的所有kv對就是按照年份升序,溫度值降序排列的。3 自訂分組比較子,所有同一年的資料屬於同一個組,那麼在reduce輸出的時候,只需要取第一個value就能達到輸出一年最高氣溫的目的。 代碼:package
1.作用kill命令用來中止一個進程。2.格式kill [ -s signal | -p ] [ -a ] pid ...kill -l [ signal
sprintf 可以進行額外的格式化strcpy 會複製直到出現 '\0' 為止,可能溢出strncpy 會複製一個以 '\0' 結束的字串,但是如果字串長度超過指定數量則被截斷,但結果可能不包含 '\0' 表示結束memcpy 只負責複製指定數量的 bytes,不處理 '' 的情況memmove 在 memcpy 的基礎上對 overlap 的情況進行了處理。這些函數的區別在於 實現功能 以及 操作對象 不同。strcpy 函數操作的對象是 字串,完成 從 源字串 到 目的字串 的 拷貝
磁碟布局為了更好的理解線上調整大小工作機制,我們首先需要理解 ext3 和 ext4 檔案系統的磁碟布局,對於該功能的實現來說,這兩個檔案系統在磁碟上的結構是一致的,同時為了簡化和突出重點,對於與線上調整大小功能不相關的內容我們將 不會介紹。Ext3 檔案系統將其所管理的磁碟或者分區(引導塊除外)中的塊劃分到不同的塊組中。每個塊組大小相同,當然最後一個塊組所管理的塊可能會少一些,其大小在檔案系 統建立時決定,主要取決於檔案系統的塊大小,對於大小為4k的檔案系統塊來說,塊組大小為
當一個容器變化時,指向該容器中元素的迭代器可能失效。這使得在迭代器變化期間改變容器容易出現問題。在這方面,不同的容器提供不同的保障:vectors: 引起記憶體重新分配的插入運算使所有迭代器失效,插入也使得插入位置及其後位置的迭代器失效,刪除運算使得刪除位元置及其後位置的迭代器失效.vector的push_back操作 可能沒事,但是一旦引發記憶體重分配,所有迭代器都會失效;vector的insert操作
原理hadoop中聲明是有機架感知的功能,能夠提高hadoop的效能。平時我們使用的hadoop叢集,實際上是從來沒有使用上這個功能的。hadoop中所說的機架感知的實現實際上這樣的:
是基於TCP協議的用戶端/伺服器程式的一般流程:伺服器調用socket()、bind()、listen()完成初始化後,調用accept()阻塞等待,處於監聽連接埠的狀態,用戶端調用socket()初始化後,調用connect()發出SYN段並阻塞等待伺服器應答,伺服器應答一個SYN-ACK段,用戶端收到後從connect()返回,同時應答一個ACK段,伺服器收到後從accept()返回。資料轉送的過程:建立串連後,TCP協議提供全雙工系統的通訊服務,但是一般的用戶端/伺服器程式的流程是由用戶端
最簡單的LRU演算法實現,就是利用jdk的LinkedHashMap,覆寫其中的removeEldestEntry(Map.Entry)方法即可,如下所示:如果你去看LinkedHashMap的源碼可知,LRU演算法是通過雙向鏈表來實現,當某個位置被命中,通過調整鏈表的指向將該位置調整到頭位置,新加入 的內容直接放在鏈表頭,如此一來,最近被命中的內容就向鏈表頭移動,需要替換時,鏈表最後的位置就是最近最少使用的位置。import java.util.ArrayList;import
按:此為客座博文系列。投稿人吳朱華曾在IBM中國研究院從事與雲端運算相關的研究,現在正致力於研究雲端運算技術。本系列文章基於公開資料對Google App Engine的實現機制這個話題進行深度探討。在切入Google App Engine之前,首先會對Google的核心技術和其整體架構進行分析,以協助大家之後更好地理解Google App Engine的實現。本篇將主要介紹Google的十個核心技術,而且可以分為四大類:分布式基礎設施:GFS、Chubby 和 Protocol
對於大部分linux系統,初始化使用init進程, /etc/inittab 為其設定檔。例如# The default runlevelid:2:initdefault# Boot-time system configuration/initialization scriptsi::sysinit:/etc/init.d/rcS# Runlevelsl0:0:wait:/etc/init.d/rc 0l1:1:wait:/etc/init.d/rc 1l2:2:wait:/etc/init.
Java NIO非堵塞應用通常適用用在I/O讀寫等方面,我們知道,系統啟動並執行效能瓶頸通常在I/O讀寫,包括對連接埠和檔案的操作上,過去,在開啟一個I/O通道後,read()將一直等待在連接埠一邊讀取位元組內容,如果沒有內容進來,read()也是傻傻的等,這會影響我們程式繼續做其他事情,那麼改進做法就是開設線程,讓線程去等待,但是這樣做也是相當耗費資源的。Java
一、/dev/shm理論預設的Linux發行版中的核心配置都會開啟tmpfs,映射到了/dev/下的shm目錄。可以通過df 命令查看結果./dev/shm/是linux下一個非常有用的目錄,因為這個目錄不在硬碟上,而是在記憶體裡。因此在linux下,就不需要大費周折去建ramdisk,直接使用/dev/shm/就可達到很好的最佳化效果。預設系統就會載入/dev/shm ,它就是所謂的tmpfs,有人說跟ramdisk(虛擬磁碟),但不一樣。象虛擬磁碟一樣,tmpfs 可以使用您的
本文可看成是對Doug Lea Scalable IO in Java一文的翻譯。當前分散式運算 Web Services盛行天下,這些網路服務的底層都離不開對socket的操作。他們都有一個共同的結構:1. Read request2. Decode request3. Process service4. Encode reply5. Send