Time of Update: 2018-12-06
表單 <form name="form1" action="arrive.php">1.單獨圖片代替按鈕<input type="image" name="submit" value="提交">2.滑鼠經過時圖片的兩種變換狀態(貌似不好用)<image src="images/a.gif" onmouseover="this.src='images/b.gif'"
Time of Update: 2018-12-06
經過一段時間的研究和學習,對IOCP的原理和流程都有了一定的瞭解,測試的Demo結果顯示在區域網路內輕輕鬆鬆處理5000個左右的串連,還是比較穩定的。運行Echo測試幾個小時後。服務端記憶體穩定在60M左右。這兩天對原始代碼進行了封裝,封裝成了一套IOCP類。原始的API調用,對於研究和學習IOCP的原理還是比較好的。封裝後,如果沒有較好的文檔,可能比較難理解。 1.發送資料流程圖 2.服務回寫資料流程 2.IOCP對象中心 2.1 TIOCPObject
Time of Update: 2018-12-06
手機中的IMEI是什麼意思? IMEI為TAC + FAC + SNR + SPIMEI(International Mobile Equipment
Time of Update: 2018-12-06
procedure TFormMain.btn1Click(Sender: TObject);begin //載入dll TReportConsoleLibWrapper.checkInitialize; try //建立一個介面,由DLL建立 with TReportConsoleLibWrapper.createReportConsole(createDefaultOperator) do try //調用介面方法,顯示表單
Time of Update: 2018-12-06
今天群裡有個朋友說他們醫院項目採用直連資料庫,高峰時期sqlserver的串連數達到7000多,於是我準備做個用diocp做個demo,服務端用串連池。白天的時候我在想,並發如果7000個。如果用diocp做三層伺服器,串連池應該在100個左右。今天晚上奮鬥了一晚上,準備把測試過程中碰到的問題總結一下。所有的代碼測試代碼寫完後,準備開始測試,配置後服務端的串連池(config\dbpool.config){ "main": { "host": ".", "user"
Time of Update: 2018-12-06
經過對一段時間對IOCP的學習和研究。對IOCP的流程有了一定的瞭解。後面對一段時間的IOCP最佳化和實際項目的使用,在DIOCP中加入了記錄檔記錄功能,利用api編寫了一個用戶端通訊類,等解決了很多bug,並已使用在公司的項目中,現運行穩定。今天對IOCP退出時資源的釋放,做了最後一步研究和最佳化。 為了方便大家學習,我把這個項目命名為DIOCP,上傳在google的SVN項目中https://code.google.com/p/diocp/大家可以通過svn下載代碼,裡面我寫了一個Echo
Time of Update: 2018-12-06
現在IOCP的功能還剩下服務端資料的返回。還是採用netty的方式。netty返回資料的調用是這樣的contenxt.write(<TObject> obj);這樣將obj對象發送給用戶端。 1.將回傳的對象進行編碼成buffer2.通過socket進行傳送. >>>>>>>>>>>>>>下面我貼出回傳資料的過程.procedure TClientContext.writeObject(const
Time of Update: 2018-12-06
DECLARE @DateStart DATETIME, @DateEnd DATETIME, @Date DATETIME SELECT @Date = GETDATE()--一個月的開始SELECT @DateStart = CAST(FLOOR(CAST(@Date as Numeric(18,10))) + 1 - DAY(@Date) as DATETIME)--一個月的結束 SELECT
Time of Update: 2018-12-06
經過兩天時間的開源,感謝網友提出一些修改意見,特別是在XE中,做了一部分最佳化。 可以在SVN中下載到最新的代碼 https://code.google.com/p/diocp/今天做了一個操作資料庫的示範<這裡我拿出我在實際項目中操作資料庫的方法,整合在Demo中> 操作資料庫比較簡單,分兩部分功能,第一部分開啟SQLprocedure TfrmMain.btnOpenSQLClick(Sender: TObject);var lvJSonStream,
Time of Update: 2018-12-06
通過comport擷取電腦中的所有串口號:procedure TForm1.FormCreate(Sender: TObject); //擷取電腦中的串口號var Cnumber:TStrings; i:Integer;begin cbb2.Items.Clear; Cnumber:=TStringList.Create; EnumComPorts(Cnumber); //擷取串口號函數:EnumComPorts for i:=0 to Cnumber.Count-1 do
Time of Update: 2018-12-06
建立IXMLDOMDocument對象的三種方法:(1)[方法1] 直接建立 IXMLDOMDocument , 例(1) uses msxml; var DOC:IXMLDOMDocument; doc := CoDOMDocument.create; ..... Doc := nil; A)doc.load('C:\temp.xml'); //從檔案載入 B) 動態建立 var aElement,aElement2: IXMLDOMElement; // [
Time of Update: 2018-12-06
剛剛的測試,服務端開了5個用戶端<每個用戶端1000>進行測試。記憶體視乎不是很多。用戶端的發過來的資料包大小在4096+88位元組左右。 測試Echo測試線程procedure TfrmMain.btnEchoTesterClick(Sender: TObject);var lvEchoTester:TEchoTester; i:Integer;begin for I := 1 to StrToInt(edtCount.Text) do begin
Time of Update: 2018-12-06
一:本篇將解決的問題本章主要為瞭解決一下幾個問題:1.JsDialog的按鈕錯位的問題 我們開發出的瀏覽器,在有些操系統上調用alert,confirm之類的對話方塊時,確定和取消按鈕會出現錯位的情況2.右鍵菜單問題 我們開發的瀏覽器,在網頁上點右鍵,會出現一些討厭的英文菜單。3.列印的問題 我們開發的瀏覽器,網頁在調用window.print的時候,沒有任何反應。4.開啟chrome的調試器 Google瀏覽器調試網頁的調試器非常好用,我們開發的瀏覽器也可以用這個工具。二:JsDial
Time of Update: 2018-12-06
在電腦中並沒有一個真正的隨機數發生器,但是可以做到使產生的數字重複率很低,這樣看起來好象是真正的隨機數,實現這一功能的程式叫偽隨機數發生器。 有關如何產生隨機數的理論有許多,如果要詳細地討論,需要厚厚的一本書的篇幅。不管用什麼方法實現隨機數發生器,都必須給它提供一個名為“種子”的初始值。而且這個值最好是隨機的,或者至少這個值是偽隨機的。“種子”的值通常是用快速計數寄存器或移位寄存器來產生的。
Time of Update: 2018-12-06
procedure TForm1.N1Click(Sender: TObject);var GridtoExcel: TDBGridEhToExcel;begin try GridtoExcel := TDBGridEhToExcel.Create(nil); GridtoExcel.DBGridEh := DBGridEh1; //需要匯出資料的DBGridEh檔案名稱 GridtoExcel.TitleName := 'EXCEL的標題';
Time of Update: 2018-12-06
Code highlighting produced by Actipro CodeHighlighter
Time of Update: 2018-12-06
function ListFiles(Dir: String):TStrings;var FSearchRec: TSearchRec; FileList: TStrings; FindResult: Integer;begin if Dir[length(Dir)]<>'\' then Dir:=Dir+'\'; FileList :=TStringList.Create;
Time of Update: 2018-12-06
本文提綱 作為一名軟體開發工程師,筆者一直很好奇當今互連網企業是如何應對高並發、高可用、大資料、彈性計算這些問題?雖然筆者沒有任何需求。但懷著好奇,於是通過在網上看各種論文、PPT講義、部落格等等,窺見不少解決這些問題的方案與開源軟體。作為對學習的總結,寫在這裡供各位博友當做茶餘飯後的看資。筆者親身實踐的內容較少,大部分停留在理論研究層面。如有疏漏錯誤,還請博友不吝賜筆,共同進步。 第一章 關於垂直擴充和水平擴充
Time of Update: 2018-12-06
TComponent類TComponent類直接由TPersistent派生。TComponent的獨特特徵是它的屬效能夠在設計期間通過ObjectInspector來控制,能夠擁有其他組件。非可視組件也是從TComponent派生的,因此它們也繼承了在設計期間可以被控制的能力。TComponent派生的非可視對象的典型例子是TTimer組件。TTimer組件是不可視組件,但它仍可以在組件面板上得到。TComponent定義了幾個重要的屬性和方法,在隨後的段落中將加以描述。1.TComponen
Time of Update: 2018-12-06
最近Twitter開發了一款分布式即時統計系統Rainbird。 用處Rainbird可以用於即時資料的統計:1 統計網站中每一個頁面,網域名稱的點擊次數2 內部系統的運行監控(統計被監控伺服器的運行狀態)3 記錄最大值和最小值 效能要求作為大型網站的分布式應用,需要具備以下效能: 1 極高的寫入效能,可以達到100,000的WPS2 非常高的讀取效能,可以達到10,000s的RPS3 高度的可擴充性,包括讀取和儲存等等,能夠擴充到100+ TB的量級4