لقد وجدت خيطًا مزيفًا تم فتحه مع ASP عبر الإنترنت ووجدت أنه يتزامن مع برنامج قمت به من قبل ، لكنني استخدمت VB من قبل ، واختارته وحفظه.
1. مبادئ التجارب هي بالطبع هي نفسها. نستخدم خادم الويب لدعم مؤشرات ترابط متعددة وإرسال طلبات HTTP متعددة إلى الخادم على نفس الصفحة لإكمال عملنا. دعنا نتجرب أولاً ، اكتب ملفين txt في نفس الوقت على صفحة لمقارنة الفرق في وقت الكتابة. الرمز كما يلي: <٪
وقت البدء = Timer ()
"--------------------------------------------------------------------------------------------------------------------------------
وظيفة runthread ()
خافت HTTP
تعيين http = server.createBject ("msxml2.xmlhttp")
http.open "get" ، "http://127.0.0.1/thread.asp؟action=b" ، false
http.send ()
وظيفة نهاية
الوظيفة A ()
محتوى قاتم ، فيليبث ، myfile
المحتوى = الآن () و CHR (30) و Timer ()
FilePath = server.mappath ("A.TXT")
set fso = createObject ("scripting.filesystemObject")
set myfile = fso.createTextFile (filepath ، true)
myfile.write (المحتوى)
myfile.close
وظيفة نهاية
الوظيفة ب ()
محتوى قاتم ، فيليبث ، myfile
المحتوى = الآن () و CHR (30) و Timer ()
FilePath = server.mappath ("B.Txt")
set fso = createObject ("scripting.filesystemObject")
set myfile = fso.createTextFile (filepath ، true)
myfile.write (المحتوى)
myfile.close
وظيفة نهاية
إذا (request.querystring ("Action") = "") ثم
Runthread ()
أ ()
آخر
ب ()
إنهاء إذا
٪> وقت تنفيذ البرنامج النصي: <٪ = Fix ((Timer ()-StartIme)*1000) ٪> MS يوضح النتيجة بعد التشغيل أن الوقت في الملف A والملف B هو نفسه بشكل أساسي. 2. مقارنة التطبيق العملي. على سبيل المثال ، أمسك برمز HTML من صفحتين في نفس الوقت ، الصفحة الرئيسية Sohu والآخر هو الصفحة الرئيسية Sina. بطريقتين: أحدهما هو ترتيب تنفيذ التعليمات البرمجية العادي ، والتنفيذ المفرد ، والآخر هو التنفيذ متعدد الخيوط هنا. قارن وقت إكمال الصفحة ، الرمز كما يلي: testspeed1.asp: <٪
وقت البدء = Timer ()
وظيفة gethttppage (url)
عند استئناف الخطأ التالي
خافت HTTP
تعيين http = server.createBject ("msxml2.xmlhttp")
http.open "post" ، url ، false
http.send ()
إذا كان http.readyState <> 4 ثم الخروج وظيفة
gethtpage = bytes2bsstr (http.responsebody)
المحتويات = gethttppage
استجابة. "<xmp>"
استجابة. write (محتويات)
استجابة. "</xmp>"
تعيين http = لا شيء
إذا err.number <> 0 ثم err.clear
وظيفة نهاية
وظيفة bytes2bstr (VIN)
قاتمة ستريتن
Dim I ، thischarcode ، nextCharcode
streturn = ""
لأني = 1 إلى lenb (vin)
thischarcode = ASCB (MIDB (VIN ، I ، 1))
إذا thischarcode <& h80 ثم
Streturn = Streturn & CHR (thischarcode)
آخر
NextCharCode = ASCB (MIDB (VIN ، I+1،1))
Streturn = Streturn & CHR (CLNG (thischarcode) * & H100 + Cint (NextCharCode))
i = i + 1
إنهاء إذا
التالي
bytes2bstr = streturn
وظيفة نهاية
gethttppage ("http://www.sohu.com/")
gethttppage ("http://www.sina.com.cn/")
٪> وقت تنفيذ البرنامج النصي: <٪ = Fix ((Timer ()-StartIme)*1000) ٪> ms testspeed2.asp: <٪
وقت البدء = Timer ()
وظيفة gethttppage (url)
عند استئناف الخطأ التالي
خافت HTTP
تعيين http = server.createBject ("msxml2.xmlhttp")
http.open "post" ، url ، false
http.send ()
إذا كان http.readyState <> 4 ثم الخروج وظيفة