คำถามติดแท็ก fork-join

11
Fork / join framework ดีกว่า thread pool อย่างไร?
ประโยชน์ของการใช้fork / join framework ใหม่เพียงแค่แบ่งงานใหญ่ออกเป็น N subtasks ในตอนเริ่มต้นส่งไปยังกลุ่มเธรดที่แคชไว้ (จากExecutors ) และรอให้แต่ละงานเสร็จสมบูรณ์ ฉันไม่เห็นว่าการใช้ fork / join abstract ทำให้ปัญหาง่ายขึ้นหรือทำให้การแก้ปัญหามีประสิทธิภาพมากขึ้นจากสิ่งที่เรามีมาหลายปีแล้วได้อย่างไร ตัวอย่างเช่นอัลกอริทึมการเบลอแบบขนานในตัวอย่างบทช่วยสอนสามารถใช้งานได้ดังนี้: public class Blur implements Runnable { private int[] mSource; private int mStart; private int mLength; private int[] mDestination; private int mBlurWidth = 15; // Processing window size, should be odd. public ForkBlur(int[] …
137 java  fork-join 

3
ทำไมสตรีมแบบขนานกับแลมบ์ดาในตัวเริ่มต้นแบบคงที่ทำให้เกิดการชะงักงัน
ฉันเจอสถานการณ์แปลก ๆ ที่การใช้สตรีมคู่ขนานกับแลมบ์ดาในตัวเริ่มต้นแบบคงที่ดูเหมือนตลอดไปโดยไม่มีการใช้งาน CPU นี่คือรหัส: class Deadlock { static { IntStream.range(0, 10000).parallel().map(i -> i).count(); System.out.println("done"); } public static void main(final String[] args) {} } นี่ดูเหมือนจะเป็นกรณีทดสอบขั้นต่ำสำหรับการจำลองพฤติกรรมนี้ ถ้าฉัน: วางบล็อกในวิธีการหลักแทนที่จะเป็นตัวเริ่มต้นแบบคงที่ ลบการขนานหรือ ถอดแลมด้า รหัสจะเสร็จสมบูรณ์ทันที ใครสามารถอธิบายพฤติกรรมนี้? มันเป็นจุดบกพร่องหรือตั้งใจ? ฉันใช้ OpenJDK เวอร์ชัน 1.8.0_66-internal
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.