เหตุใดจึงมีความล่าช้านาน 6 วินาทีในการเริ่มต้นของ Curl


8

ฉันได้ติดตั้ง Cygwin แบบเต็มบนเครื่อง Windows 7 x64 ของฉันแล้ว หลังจากรีบูตเครื่องแต่ละเครื่อง Curl อาจใช้เวลาประมาณ 6 วินาทีในการเริ่มต้น ในการใช้งานครั้งถัดไปของ Curl ไม่มีความล่าช้า ดูเหมือนว่า DLL กำลังถูกเตรียมใช้งานหรือ มีใครเห็นอีกบ้างและเป็นเรื่องปกตินี้ไหม


1
อาจเป็น Cygwin DLL ในการเริ่มต้นตัวเองถ้าไม่มีกระบวนการ Cygwin ได้เริ่มต้นก่อนหน้านี้ คุณเรียกใช้ curl อย่างไร - จากเชลล์ Windows หรือจาก Cygwin bash คุณเปิดใช้งานบริการ Cygwin หรือคำสั่ง Cygwin ที่ทำงานเมื่อเริ่มต้นระบบหรือเข้าสู่ระบบหรือไม่?
Aaron Miller

ฉันกำลังเรียกใช้จากพรอมต์คำสั่งของ Windows (ไม่ใช่จาก bash) ฉันไม่ได้กำหนดค่าบริการอื่นใดให้เริ่มต้น ฉันทำซ้ำปัญหาบนเครื่องอื่น ๆ รวมถึง Windows 32 บิตแล้วดังนั้นฉันคิดว่าอาจเป็นเวลาปกติในการเริ่มต้น แต่ฉันต้องการยืนยันสิ่งนี้
user265445

คำตอบ:


7

นี่เป็นปกติ; เป็นครั้งแรกที่ Cygwin DLL ทำงาน ดำเนินการหลายขั้นตอนการเริ่มต้น ซึ่งอาจใช้เวลานานในการตั้งค่าสภาพแวดล้อม Cygwin การกำหนดค่าเริ่มต้นนี้เกิดขึ้นเป็นครั้งแรกหลังจากการบูตระบบที่กระบวนการ Cygwin ถูกสร้างขึ้นและน่าเสียดายที่ไม่มีวิธีรอบตัวจริง

คำแนะนำที่ดีที่สุดที่ฉันสามารถนำเสนอคือการปรับเปลี่ยนรูปแบบการเริ่มต้นระบบของคุณหรือสคริปต์เข้าสู่ระบบของคุณเพื่อสร้างกระบวนการ Cygwin เพื่อให้เวลาการเริ่มต้นได้รับ "รีด" ที่จุดเมื่อคุณคาดหวังว่าจะรอระบบ แทนที่จะเกิดขึ้นในภายหลังเมื่อคุณคาดหวังการตอบสนองอย่างรวดเร็ว ตัวอย่างเช่นคุณอาจเพิ่มสิ่งต่อไปนี้เป็นไฟล์แบตช์ลงใน C:\Users\<your username>\AppData\Local\Microsoft\Windows\Start Menu\Programs\Startup:

c:\cygwin\bin\run.exe '/bin/bash -c "ls > /dev/null"'

ขั้นตอนนี้จะเปิดใช้งานกระบวนการทุบตี Cygwin ซึ่งไม่ทำอะไรเลยอย่างรวดเร็วและออกโดยไม่แสดงหน้าต่างบนคอนโซลของคุณ - ดังนั้นบังคับให้ Cygwin DLL โหลดและเริ่มต้นเองโดยไม่สร้างผลข้างเคียงใด ๆ และเมื่อคุณเปิด พรอมต์คำสั่งและเรียกใช้ curl เวลาเริ่มต้นจะเกิดขึ้นแล้วและคุณจะไม่ต้องรำคาญในขณะที่ใช้คำสั่งแบบโต้ตอบ


ขอบคุณสำหรับลิงค์ที่อธิบายถึงความล่าช้าที่ฉันเห็น
user265445
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.