คำถามติดแท็ก locking

การล็อกช่วยให้สามารถใช้ทรัพยากรประเภทต่างๆได้ทีละกระบวนการ

8
ค้นหาผู้ที่ล็อคไฟล์บนเครือข่ายแชร์
ฉันต้องการทราบว่าใครกำลังล็อคไฟล์บนเครือข่ายที่ใช้ร่วมกัน นี่คือปัญหา: การแชร์เครือข่ายอยู่บน NAS ดังนั้นฉันจึงไม่สามารถเข้าสู่ระบบได้ ฉันต้องการเครื่องมือเพื่อค้นหาผู้ที่ล็อกไฟล์จากระยะไกล ไม่สามารถทำการรีบูท NAS ได้ทุกครั้งเนื่องจากมีผู้ใช้หลายคน ดูเหมือนว่าHandle.exe , Process Explorer และPsFileจะถูก จำกัด อยู่ที่ไฟล์ในเครื่องท้องถิ่นดังนั้นมันจึงไม่ทำงานสำหรับฉัน
141 windows  locking 

1
Notepad เต้นได้ทั้งหมด?
ในระบบ Windows Server 2012 R2 โปรแกรม Kotlin ใช้FileChannel.tryLock()เพื่อล็อคไฟล์แบบเอกสิทธิ์เฉพาะบุคคลเช่นนี้: val fileRw = RandomAccessFile(file, "rw") fileRw.channel.tryLock() ด้วยการล็อคนี้ฉันไม่สามารถเปิดไฟล์ด้วย: WordPad Notepad ++ โดยใช้โปรแกรม C # สำหรับค่าใด ๆFileShare: using (var fileStream = new FileStream(processIdPath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) using (var textReader = new StreamReader(fileStream)) { textReader.ReadToEnd(); } จากบรรทัดtypeคำสั่งคำสั่ง: C:\some-directory>type file.txt The process cannot access the file …

23
Git 'fatal: ไม่สามารถเขียนไฟล์ดัชนีใหม่'
ฉันเคยเห็นกระทู้อื่น ๆ เกี่ยวกับเรื่องนี้มากมายและไม่ได้ช่วยอะไร ฉันมี repo ที่เรียบง่าย - ไฟล์ JavaScript สองไฟล์ ฉันมี Macbook 100+ GB เมื่อฉันพยายามย้ายไฟล์ไปไว้ในไดเร็กทอรีย่อยและจัดลำดับการเปลี่ยนแปลงที่ฉันได้รับ ... ร้ายแรง: ไม่สามารถเขียนไฟล์ดัชนีใหม่ได้ สิ่งนี้เกิดขึ้นไม่ว่าฉันจะดำเนินการทั้งหมดในเทอร์มินัลหรือถ้าฉันใช้ GUI เช่น SourceTree นอกจากนี้ไฟล์ใดไฟล์หนึ่งจะถูกล็อกและฉันไม่สามารถลบไดเร็กทอรีการทำงานได้จนกว่าฉันจะออกจากระบบและกลับเข้ามาใหม่ เหตุใดจึงเกิดขึ้น การล็อกป้องกันไม่ให้มีการจัดเตรียมบางอย่างหรือไม่? ถ้าเป็นเช่นนั้นฉันจะปลดล็อกไฟล์ปัญหาบน OS X ได้อย่างไร? repo ระยะไกลคือ Google Code หากนั่นสร้างความแตกต่างแม้ว่าฉันจะยังไม่ได้กดไปที่รีโมตก็ตาม ทุกอย่างเป็นของท้องถิ่น
128 git  locking 

8
วิธีใดในการเลือกโดยไม่ทำให้เกิดการล็อกใน MySQL?
ค้นหา: SELECT COUNT(online.account_id) cnt from online; show processlistแต่ตารางออนไลน์มีการแก้ไขโดยเหตุการณ์บ่อยครั้งดังนั้นฉันสามารถดูล็อคโดยการเรียกใช้ มีไวยากรณ์ใดใน MySQL ที่สามารถทำให้คำสั่ง select ไม่ทำให้เกิดการล็อกได้หรือไม่? และฉันลืมที่จะพูดถึงข้างต้นว่ามันอยู่ในฐานข้อมูลทาสของ MySQL หลังจากที่ฉันเพิ่มเข้าไปmy.cnf:transaction-isolation = READ-UNCOMMITTED ในทาสจะพบกับข้อผิดพลาด: ข้อผิดพลาด 'ไม่สามารถบันทึกไบนารีได้ ข้อความ: ระดับธุรกรรม 'READ-UNCOMMITTED' ใน InnoDB ไม่ปลอดภัยสำหรับโหมด binlog 'STATEMENT' ในข้อความค้นหา มีวิธีที่เข้ากันได้ในการทำเช่นนี้หรือไม่?
126 mysql  locking 

20
ตรวจสอบให้แน่ใจว่ามีโปรแกรมทำงานอยู่เพียงอินสแตนซ์เดียว
มีวิธี Pythonic ที่จะมีโปรแกรมทำงานเพียงอินสแตนซ์เดียวหรือไม่? วิธีแก้ปัญหาที่สมเหตุสมผลเพียงวิธีเดียวที่ฉันคิดขึ้นมาคือพยายามเรียกใช้เป็นเซิร์ฟเวอร์ในบางพอร์ตจากนั้นโปรแกรมที่สองพยายามผูกกับพอร์ตเดียวกัน - ล้มเหลว แต่มันก็ไม่ใช่ความคิดที่ดีจริงๆอาจจะมีอะไรที่เบากว่านี้? (โปรดพิจารณาว่าโปรแกรมที่คาดว่าจะล้มเหลวในบางครั้งเช่น segfault ดังนั้นสิ่งต่างๆเช่น "ล็อกไฟล์" จะไม่ทำงาน)


4
อะไรคือความแตกต่างระหว่างล็อคพิเศษและล็อคที่ใช้ร่วมกัน?
ตามวิกิพีเดีย การล็อกที่ใช้ร่วมกันบางครั้งเรียกว่า "read locks" และบางครั้งเรียกว่า "write locks" คุณช่วยอธิบายเหตุผลเบื้องหลังของคำว่า "แชร์" และ "เอกสิทธิ์เฉพาะตัว" ได้ไหม
119 unix  locking 

3
ปัญหาไฟล์ที่ถูกล็อก log4net RollingFileAppender เป็นระยะ ๆ
เราพบปัญหาไม่ต่อเนื่องในเครื่องพัฒนาและการผลิตโดยที่ไฟล์บันทึกของเราไม่ได้รับการบันทึก เมื่อทำงานในการพัฒนาและการดีบักโดยใช้ Visual Studio เราได้รับข้อความแสดงข้อผิดพลาด log4net ต่อไปนี้ในหน้าต่างผลลัพธ์ VS: log4net:ERROR [RollingFileAppender] Unable to acquire lock on file C:\folder\file.log. กระบวนการนี้ไม่สามารถเข้าถึงไฟล์ 'C: \ folder \ file.log' ได้เนื่องจากถูกใช้โดยกระบวนการอื่น log4net:ERROR XmlConfigurator: Failed to find configuration section 'log4net' in the application's .config file. Check your .config file for the <log4net> and <configSections> elements. ส่วนการกำหนดค่าควรมีลักษณะดังนี้: <section name="log4net" …


3
ทำไมวัตถุล็อคจึงต้องเป็นแบบคงที่?
เป็นเรื่องปกติมากที่จะใช้ออบเจ็กต์แบบอ่านอย่างเดียวแบบคงที่ส่วนตัวสำหรับการล็อกแบบมัลติเธรด ฉันเข้าใจว่าไพรเวตลดจุดเข้าสู่วัตถุล็อคโดยการทำให้การห่อหุ้มแน่นขึ้นและดังนั้นการเข้าถึงสิ่งที่สำคัญที่สุด แต่ทำไมคง? private static readonly object Locker = new object(); ในตอนท้ายฟิลด์จะใช้เฉพาะในชั้นเรียนของฉันเท่านั้นและฉันยังสามารถใช้สิ่งนี้แทน: private readonly object Locker = new object(); มีคำแนะนำอะไรมั้ย? อัพเดท: ตัวอย่างเช่นฉันได้วางโค้ดนี้ (เป็นเพียงตัวอย่าง) ฉันสามารถใช้ตู้เก็บของแบบคงที่หรือไม่คงที่กับสิ่งนี้และทั้งสองอย่างก็ใช้ได้ดี เมื่อพิจารณาคำตอบด้านล่างฉันควรจะกำหนดตู้เก็บของฉันแบบนี้ดีกว่าไหม? (ขออภัยฉันมีสัมภาษณ์สัปดาห์หน้าและต้องรู้ทุกรายละเอียด :) private readonly object Locker = new object(); และนี่คือรหัส: private int _priceA; private int _priceB; private EventWaitHandle[] _waithandle; private readonly IService _service; //ctor public …

7
งบล็อคแพงแค่ไหน?
ฉันได้ทดลองกับการประมวลผลแบบหลายเธรดและการประมวลผลแบบขนานและฉันต้องการตัวนับเพื่อทำการนับพื้นฐานและการวิเคราะห์ทางสถิติเกี่ยวกับความเร็วของการประมวลผล เพื่อหลีกเลี่ยงปัญหาในการใช้คลาสของฉันพร้อมกันฉันได้ใช้คำสั่งล็อคกับตัวแปรส่วนตัวในคลาสของฉัน: private object mutex = new object(); public void Count(int amount) { lock(mutex) { done += amount; } } แต่ฉันสงสัยว่า ... การล็อคตัวแปรแพงแค่ไหน? ผลเสียต่อประสิทธิภาพคืออะไร?

6
MySQL: ธุรกรรมเทียบกับตารางการล็อก
ฉันสับสนเล็กน้อยกับการทำธุรกรรมและการล็อกตารางเพื่อให้แน่ใจว่าฐานข้อมูลมีความสมบูรณ์และตรวจสอบให้แน่ใจว่า SELECT และ UPDATE ยังคงซิงค์อยู่และไม่มีการเชื่อมต่ออื่นใดรบกวน ฉันจำเป็นต้อง: SELECT * FROM table WHERE (...) LIMIT 1 if (condition passes) { // Update row I got from the select UPDATE table SET column = "value" WHERE (...) ... other logic (including INSERT some data) ... } ฉันต้องตรวจสอบให้แน่ใจว่าไม่มีการสอบถามอื่นใดที่จะรบกวนและดำเนินการแบบเดียวกันSELECT(อ่าน 'ค่าเก่า' ก่อนที่การเชื่อมต่อนั้นจะอัปเดตแถวเสร็จสิ้น ฉันรู้ว่าฉันสามารถตั้งค่าเริ่มต้นเพื่อLOCK TABLES tableตรวจสอบให้แน่ใจว่ามีการเชื่อมต่อเพียงครั้งละ 1 …

4
Java Synchronized Block สำหรับ. class
รหัสจาวาหมายถึงอะไร? จะได้รับการล็อควัตถุทั้งหมดของMyClass? synchronized(MyClass.class) { //is all objects of MyClass are thread-safe now ?? } และโค้ดด้านบนแตกต่างจากโค้ดนี้อย่างไร: synchronized(this) { //is all objects of MyClass are thread-safe now ?? }

4
Re-entrant lock และแนวคิดโดยทั่วไปคืออะไร?
ฉันมักจะสับสน จะมีใครอธิบายได้ไหมว่าReentrantหมายถึงอะไรในบริบทต่างๆ แล้วทำไมคุณถึงต้องการใช้ reentrant กับ non-reentrant? พูดว่า pthread (posix) กำลังล็อค primitives พวกเขากลับเข้ามาใหม่หรือไม่? ข้อผิดพลาดใดที่ควรหลีกเลี่ยงเมื่อใช้? mutex re-entrant หรือไม่

2
สับสนเกี่ยวกับ UPDLOCK, HOLDLOCK
ในขณะที่ค้นคว้าการใช้Table Hintsฉันเจอคำถามสองข้อนี้: ฉันควรใช้คำแนะนำการล็อกใด (T-SQL) HOLDLOCK มีผลอย่างไรต่อ UPDLOCK? คำตอบของทั้งสองคำถามบอกว่าเมื่อใช้(UPDLOCK, HOLDLOCK)กระบวนการอื่น ๆ จะไม่สามารถอ่านข้อมูลบนตารางนั้นได้ แต่ฉันไม่เห็นสิ่งนี้ ในการทดสอบฉันสร้างตารางและเริ่มหน้าต่าง SSMS สองหน้าต่าง จากหน้าต่างแรกฉันรันธุรกรรมที่เลือกจากตารางโดยใช้คำแนะนำตารางต่างๆ ในขณะที่ธุรกรรมกำลังทำงานอยู่จากหน้าต่างที่สองฉันเรียกใช้คำสั่งต่างๆเพื่อดูว่ารายการใดจะถูกบล็อก ตารางทดสอบ: CREATE TABLE [dbo].[Test]( [ID] [int] IDENTITY(1,1) NOT NULL, [Value] [nvarchar](50) NULL, CONSTRAINT [PK_Test] PRIMARY KEY CLUSTERED ( [ID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, …

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