คำถามติดแท็ก background-thread

21
ได้รับข้อผิดพลาด“ แอปพลิเคชันนี้กำลังแก้ไขข้อผิดพลาด autolayout engine จากเธรดพื้นหลัง” หรือไม่
เคยพบข้อผิดพลาดนี้มากมายใน OS X ของฉันโดยใช้ swift: "แอปพลิเคชันนี้กำลังแก้ไขเอ็นจิ้น autolayout จากเธรดแบ็คกราวน์ซึ่งอาจนำไปสู่ความเสียหายของเครื่องยนต์และข้อผิดพลาดแปลก ๆ ซึ่งจะทำให้เกิดข้อยกเว้นในการเปิดตัวในอนาคต" ฉันมีNSWindowของฉันและฉันเปลี่ยนมุมมองไปcontentViewที่หน้าต่าง ฉันได้รับข้อผิดพลาดเมื่อฉันพยายามทำNSApp.beginSheetหน้าต่างหรือเมื่อฉันเพิ่มsubviewหน้าต่าง พยายามปิดใช้งานการเก็บข้อมูลอัตโนมัติและฉันไม่มีอะไรที่ใช้เค้าโครงอัตโนมัติ ความคิดใด ๆ บางครั้งมันก็โอเคและไม่มีอะไรเกิดขึ้นบางครั้งมันก็ทำให้ฉันUIและไม่มีอะไรเหลือ

5
การใช้ startBackgroundTaskWithExpirationHandler อย่างเหมาะสม
beginBackgroundTaskWithExpirationHandlerฉันบิตสับสนเกี่ยวกับวิธีการและเมื่อใช้ Apple แสดงให้เห็นในตัวอย่างเพื่อใช้ในการapplicationDidEnterBackgroundมอบหมายเพื่อให้มีเวลามากขึ้นในการทำงานที่สำคัญบางอย่างโดยปกติจะเป็นธุรกรรมเครือข่าย เมื่อดูในแอปของฉันดูเหมือนว่าสิ่งต่างๆในเครือข่ายส่วนใหญ่ของฉันมีความสำคัญและเมื่อมีการเริ่มต้นฉันต้องการดำเนินการให้เสร็จสิ้นหากผู้ใช้กดปุ่มโฮม ดังนั้นจึงเป็นที่ยอมรับ / แนวทางปฏิบัติที่ดีในการรวมทุกธุรกรรมเครือข่าย (และฉันไม่ได้พูดถึงการดาวน์โหลดข้อมูลจำนวนมากส่วนใหญ่เป็น xml สั้น ๆ ) beginBackgroundTaskWithExpirationHandlerเพื่อให้ปลอดภัย

12
จะเรียกใช้งานบางอย่างทุกวันในช่วงเวลาใดเวลาหนึ่งโดยใช้ ScheduledExecutorService ได้อย่างไร?
ฉันพยายามทำงานบางอย่างทุกวันตอนตี 5 ตอนเช้า ดังนั้นฉันจึงตัดสินใจใช้ScheduledExecutorServiceสำหรับสิ่งนี้ แต่จนถึงตอนนี้ฉันได้เห็นตัวอย่างที่แสดงวิธีเรียกใช้งานทุกสองสามนาที และฉันไม่พบตัวอย่างใด ๆ ที่แสดงวิธีการทำงานทุกวันในช่วงเวลาใดเวลาหนึ่ง (ตี 5) ในตอนเช้าและยังพิจารณาถึงความเป็นจริงของเวลาออมแสงด้วย - ด้านล่างนี้คือรหัสของฉันซึ่งจะทำงานทุก ๆ 15 นาที - public class ScheduledTaskExample { private final ScheduledExecutorService scheduler = Executors .newScheduledThreadPool(1); public void startScheduleTask() { /** * not using the taskHandle returned here, but it can be used to cancel * the task, …

1
การตอบสนองแบบดั้งเดิมนั้นรองรับเธรดมัลติเธรดและแบ็คกราวน์หรือการดำเนินการแบบขนานหรือไม่? เราจะทำสิ่งนั้นได้อย่างไร
ฉันได้อ่านเอกสารอย่างเป็นทางการของ react-native และแหล่งสื่อและบล็อกอื่น ๆ แล้วฉันรู้ว่ามีUI ThreadและJavaScript Threadใน react-native Javascript thread เป็นเธรดที่ลอจิกจะรันโค้ดจาวาสคริปต์จะทำการเรียก API การสัมผัสของเหตุการณ์จะถูกประมวลผลและอื่น ๆ อีกมากมาย และ UI Thread จะอัพเดต UI หากเธรด JavaScript กำลังทำงานในกระบวนการและหากเราดำเนินการกับปุ่มหรือเหตุการณ์การสัมผัสอื่น ๆ อีกครั้งจะต้องใช้เวลาในการตอบสนองหลังจากดำเนินการหนึ่งกระบวนการเพียงอัปเดต UI จนกว่าจะรู้สึกว่ามันล้าหลังหรือติดอยู่ที่ใดที่หนึ่ง ตัวอย่างเช่น มีตัวนำทางแท็บด้านล่างซึ่งมีสี่แท็บมี listview ในแท็บแรกและมุมมองแผนที่ซึ่งแสดงเส้นทางระหว่างหลายจุดในแท็บที่สอง ฉันได้ทำการกระทำของปุ่ม (คลิกเช่นเดียวกับปุ่มในมุมมองรายการ) ในแท็บแรกและไปที่แท็บที่สองในทันทีมันรู้สึกล่าช้าเล็กน้อยในการอัปเดต UI หรือใช้เวลาสักครู่ (1-3 วินาที) เพื่อนำทางจากครั้งแรก ไปที่แท็บที่สอง ในแท็บที่สองแผนที่ใช้เวลา (5-10 วินาที) เพื่อดึงเส้นทางระหว่างหลายจุดเมื่อกระบวนการนี้ดำเนินต่อไปหากฉันนำทางไปยังแท็บอื่น ๆ การนำทางระหว่างแท็บนั้นไม่ราบรื่นและ UI ล่าช้ามีจำนวนมาก เราจะทำให้แอปที่ตอบสนองต่อพื้นเมืองตอบสนองได้เร็วขึ้นต่อการกระทำที่สัมผัสได้และลดความล่าช้าของ UI …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.