เมื่อใช้งานร่วมกันบางครั้งอาจล่าช้า


9

อัปเดต:พวกเขาแก้ไข macOS wifi lag ใน Synergy 1.9.0! https://symless.com/forums/topic/2587-download-synergy-190-to-fix-the-wifi-macos-bug/

synergyฉันใช้ เดสก์ทอป linux ของฉันทำหน้าที่เป็นเซิร์ฟเวอร์และ macbook ของฉันเชื่อมต่อเป็นไคลเอนต์ ขณะที่ใช้งานร่วมกันพวกเขาทั้งคู่เชื่อมต่อกับเราเตอร์ linksys WRT-45GL ทั้งสองโดยใช้การเชื่อมต่อแบบใช้สาย

บางครั้งเมื่อฉันวางเมาส์บน macbook ครั้งแรกการเชื่อมต่อจะล่าช้า ตัวอย่างเช่นฉันจะเลื่อนเมาส์ แต่เคอร์เซอร์จะไม่เคลื่อนที่เป็นเวลา 2 หรือ 3 วินาที หรือฉันจะพิมพ์บางอย่างมันจะไม่ปรากฏขึ้นสักพัก มันเกิดขึ้นเป็นระยะ ๆ โดยทั่วไปแล้วในช่วงนาทีแรกของการเปลี่ยนไปใช้ mac แต่ไม่จำเป็น

ฉันจะแก้ไขสิ่งนี้ได้อย่างไร

ฉันได้ลองตรวจสอบการใช้งาน CPU ของทั้งสองเครื่องแล้ว แต่ยังไม่เห็นจุดที่ตรงกับความล่าช้า ฉันคิดว่าคอขวดอยู่ในการรับส่งข้อมูลเครือข่าย แต่ฉันไม่ทราบวิธีการยืนยันหรือวิธีการแก้ไข


2
คุณได้ลองย้อนกลับบทบาทของเครื่องเพื่อดูว่ามันทำซ้ำพฤติกรรมหรือไม่? อย่างน้อยคุณก็ต้องพิจารณาตัวเลือกต่างๆ

ฉันยังไม่ได้แม้ว่าจะไม่ใช่ตัวเลือก: การใช้ mac เป็นไคลเอนต์ทำให้คีย์เป็นเกลียวบนเดสก์ท็อป (ซึ่งเป็นเครื่องหลักของฉัน) ฉันจะลองดูเมื่อฉันได้รับโอกาสแม้ว่า ...
David Oneill

คุณแก้ไขปัญหานี้หรือไม่? คำตอบที่ได้รับการยอมรับเป็นเพียงเคล็ดลับการแก้ไขปัญหา อะไรคือสาเหตุ / วิธีแก้ปัญหาสำหรับคุณ
อัลเบิร์ต Bori

@AlbertBori ว้าว - มาจาก 4 ปีที่แล้ว มันไม่ได้เกิดขึ้น ณ จุดนี้สำหรับฉัน แต่ฉันมีการติดตั้งระบบปฏิบัติการใหม่และคอมพิวเตอร์เดสก์ท็อปเครื่องอื่นนับ แต่นั้นมา ... ฉันจำไม่ได้ว่าปัญหาที่เกิดขึ้นคืออะไร ขออภัย
David Oneill

1
ไม่ต้องกังวลเดวิด นี่เป็นเพียงโพสต์เดียวที่ฉันพบว่าพูดถึงปัญหาที่ฉันมี ปรากฎรูปแบบของการรีสตาร์ทบริการ / คอมพิวเตอร์ที่เกี่ยวข้องมักจะล้างปัญหา
อัลเบิร์ต Bori

คำตอบ:


3

คุณรู้ดีว่ามันเป็นเลเยอร์ 2 ไม่ได้หากเชื่อมต่ออุปกรณ์เพียงสองเครื่องเท่านั้น (ตาราง mac ไม่สามารถเติมได้) หากคุณมีการแม็พโฮสต์แบบสแตติกจะไม่สามารถเป็นเลเยอร์สามได้ ที่ทิ้งแบนด์วิดธ์การชนและซอฟต์แวร์ Wireshark สามารถบอกคุณเกี่ยวกับแบนด์วิดท์และบางครั้งสามารถระบุการชน ฉันจะวางชิ้นส่วนของฮาร์ดแวร์ราคาถูกไว้ตรงกลางที่มีการบันทึกการชนเพื่อตรวจสอบสิ่งนั้น ถ้าอย่างนั้นคุณก็พร้อมจะสมัคร


1
สิ่งนี้ได้รับการแก้ไขแล้ว! เราแก้ไข macOS wifi lag ใน Synergy 1.9.0! symless.com/forums/topic/…
Nick Bolton

@NickBolton มันไม่ได้รับการแก้ไขสำหรับผู้ใช้จำนวนมากให้ดูที่symless.com/forums/topic/ ......นอกจากนี้ 1.9.0 ขัดข้องเมื่อเริ่มต้นใช้งานสำหรับฉันและคนอื่น ๆ
PabloC

3

ฉันมีปัญหาเดียวกันเมื่อไม่กี่วินาทีที่ผ่านมาฉันลองแก้ไขอื่น ๆ ทั้งหมด (นอกเหนือจาก Ethernet สำหรับ mac ของฉัน)

บนโฮสต์คอมพิวเตอร์ (Windows) ให้ไปที่ Task Manager (Ctrl + Shift + Esc) จากนั้นคลิกที่แท็บรายละเอียดด้านบนแล้วค้นหาsynergy.exe, synergyd.exe, และจากนั้นคลิกขวาที่พวกเขาและภายใต้เมนูย่อยกำหนดลำดับความสำคัญให้เลือกsynergys.exeHigh


ไม่ทำงาน :( มีความคิดเพิ่มเติมอีกหรือไม่
DrCord

3

ประวัติความเป็นมาและแนวทางแก้ไข

ยาวไปหน่อย แต่ประเด็นก็คือให้ความรู้ผ่านส่วนคำแนะนำโดยละเอียด หากคุณมีการศึกษาอยู่แล้วโปรดอ่านหัวข้อนี้และอาจเป็นข้อสรุป ;-)

ฉันใช้ซินเนอร์จี้บน Linux และ Windows ในรูปแบบต่าง ๆ มาตั้งแต่ทศวรรษ 1990 และคำถามนี้ก็ปรากฏขึ้นบ่อยครั้ง มีสาเหตุที่พบบ่อยสองประการและฉันจัดการที่นี่ด้วยสาเหตุแรกเท่านั้น

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

บางครั้งมีเหตุผลอื่น: กระบวนการเซิร์ฟเวอร์หรือไคลเอนต์หนึ่งหรือทั้งคู่ตายและเริ่มต้นใหม่ในกรณีนี้คุณควรเปิดใช้งานการบันทึกระดับการดีบักบนเซิร์ฟเวอร์และไคลเอนต์ของซินเนอร์จี้แล้วนำมาจากที่นั่น เมื่อคุณได้รับการแก้ไขให้ดำเนินการตามข้างต้น

คำแนะนำโดยละเอียด

การเพิ่มลำดับความสำคัญของกำหนดการไคลเอนต์ Windows

ใช้ Windows 7 ฉันไม่รู้ทางลัดในเวอร์ชั่นที่ใหม่กว่า

  1. เปิดตัวจัดการงาน (Ctrl-Alt-Esc) และคลิกที่แท็บกระบวนการ

  2. คลิกขวาที่ synergy.exe คลิก "Set Priority" แล้วเลือก High หรือ Realtime

  3. ทำซ้ำสำหรับ synergyc.exe

  4. หากเซิร์ฟเวอร์ของ Synergy ช้าเกินไปกระบวนการของมันคือ synergys.exe

การเพิ่มระดับความสำคัญของตัวกำหนดตารางเวลาไคลเอ็นต์ Linux

สิ่งที่คล้ายกันควรใช้กับ Mac คุณอาจรู้วิธีการทำเช่นนี้ใน GUI แต่ฉันใช้บรรทัดคำสั่ง จนกว่าคุณจะทำต่อไปนี้เป็นราก ( sudo su -) คุณจะต้องเล่นรอบ (เป็น root) ด้วยและการตั้งค่าสิทธิที่เกี่ยวข้องกับการใช้งานvisudorenice

ps -eo pid,ni,cmd |\
grep synergy |\
grep -v grep |\
cut -d" " -f2 |\
while read pid; do echo -n $pid" "; done |\
xargs renice -19

คุณสามารถคัดลอกและวางด้านบนหรือวางไว้บนหนึ่งบรรทัดโดยลบ\อักขระตัวแบ่งบรรทัดและทั้งหมด xargs echo renice -19หากคุณต้องการที่จะเห็นสิ่งที่จะทำงานโดยไม่ต้องทำจริงมันเปลี่ยนคำสั่งสุดท้ายที่จะ

ตามที่ระบุไว้ข้างต้นสิ่งนี้ยังคงเป็นไปตามคำสั่งของมุมมองตัวกำหนดตารางเวลาเกี่ยวกับความสำคัญของกระบวนการอื่น ๆ มากมาย หากคุณต้องการเรียนรู้เล็กน้อยคุณสามารถทำสิ่งต่อไปนี้

เห็นกระบวนการ Windows

เปิดตัวจัดการงาน ในแท็บกระบวนการคลิกที่ปุ่ม "แสดงกระบวนการจากผู้ใช้ทั้งหมด" จากนั้นคลิกที่เมนูมุมมองและที่ "เลือกคอลัมน์ ... " ตรวจสอบให้แน่ใจว่ามีการทำเครื่องหมายเฉพาะต่อไปนี้: ชื่อผู้ใช้การใช้งาน CPU เวลา CPU ลำดับความสำคัญพื้นฐานบรรทัดคำสั่ง คุณสามารถคลิกที่คำอธิบายได้เช่นกันหากต้องการ

คุณสามารถลากหน้าต่างรวมถึงคอลัมน์ที่ใหญ่ขึ้นเพื่อให้อ่านง่ายขึ้น คลิกที่ส่วนหัวของคอลัมน์เพื่อจัดเรียง คุณสามารถคลิกขวาที่ชื่อรูปภาพและไปที่บริการที่เกี่ยวข้อง สิ่งนี้มีประโยชน์สำหรับชื่อรูปภาพที่ไม่สุภาพเช่น svchost.exe หากคุณต้องการเครื่องมือที่มีประสิทธิภาพมากในการเล่นกับ (ระวัง!) ลองProcessHacker

เห็นกระบวนการ Linux

เรียกใช้ps -eo pid,ni,cmd | lessเพื่อดูกระบวนการทำงานทั้งหมด แต่ละบรรทัดแสดงสถานะกระบวนการและคอลัมน์คือ: ID กระบวนการลำดับความสำคัญและบรรทัดรับคำสั่งที่เป็นปัญหา gotcha คือในระบบปฏิบัติการ Unix ยิ่งค่า nice ต่ำลงเท่าใดลำดับความสำคัญก็จะยิ่งสูงขึ้นเท่านั้น

ข้อสรุป

สิ่งคือว่าซินเนอร์จี้ขึ้นอยู่กับกระบวนการอื่น ๆ เป็นจำนวนมากในการทำงานส่วนหนึ่งของมัน (เช่นการจัดการกับ SSL ใน Pro) และกระบวนการเหล่านี้มีลำดับความสำคัญที่กำหนดโดยระบบกำหนดการของระบบปฏิบัติการ ดังนั้นจึงไม่มีทางออกที่ง่ายจริงๆ

แม้หลังจากใช้ "การแก้ไข" ที่อ้างถึงข้างต้นสิ่งต่าง ๆ มักจะช้าลงหลังจากเข้าสู่หน้าจอไคลเอนต์ที่คุณไม่ได้อยู่พักหนึ่งและนั่นก็เนื่องมาจากกระบวนการทั้งหมดในตระกูลนี้ถูกวางลงใน back back scheduler's ดังนั้น พูด. ตัวกำหนดเวลาส่วนใหญ่ในปัจจุบันมีการปรับตัวและลดลำดับความสำคัญของกระบวนการผู้ใช้ที่ไม่ได้ใช้งานเป็นระยะเวลาหนึ่ง เพื่อให้ตัวกำหนดตารางเวลาในการดูพวกเขามีความสำคัญอีกครั้งจำเป็นต้องใช้อย่างต่อเนื่องชั่วครู่เช่นการเลื่อนเมาส์ไปรอบ ๆ หลังจากคุณเข้าสู่หน้าจอ มันเป็นความเจ็บปวด แต่นั่นเป็นวิธีที่ตัวจัดตารางเวลาระบบปฏิบัติการทำงานในระบบปฏิบัติการแบบเรียลไทม์

มีวิธีการปรับแต่งที่มี แต่เฉพาะกับแต่ละระบบปฏิบัติการ (แม้กระทั่งการเปิดตัวที่แตกต่างกัน) และเปราะบาง (อ่าน: แบ่งได้อย่างง่ายดายเมื่อแพทช์ระบบปฏิบัติการ) หากไม่ดูรหัสฉันคาดหวังว่า Nick & ทีมจะแก้ปัญหานี้ได้โดยการผลักดัน Synergy ลงไปถึงระดับไดรเวอร์เคอร์เนลซึ่งจะทำให้มันบอบบางมากขึ้นและทำให้ราคาพุ่งขึ้นอย่างมาก

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