2008-09-19 24 views
13

Bộ nhớ heap tối đa 64 MB mặc định có thể nhỏ cho một ứng dụng Java lớn. Có bất kỳ tham số applet nào để tăng điều này cho một applet đã ký không?Làm cách nào để khởi động một ứng dụng Java có nhiều bộ nhớ hơn?

Đối với chương trình Java, đây là tham số dòng lệnh đơn giản nhưng cách này hoạt động đối với một applet trong trình duyệt.

+0

Bạn cần phải có một chút cụ thể hơn về môi trường bạn đang chạy. –

Trả lời

10

Các new plugin architecture in JDK6u10 hỗ trợ này. Trước đó, cách duy nhất để làm điều đó là trong bảng điều khiển Java.

+3

"Kiến trúc plugin mới trong JDK6u10 hỗ trợ điều này, nhưng rõ ràng là chỉ ở giai đoạn RC ngay bây giờ. " Hiện đã hết. :) – hishadow

-3

Không phải là tôi biết chắc chắn, đã lâu rồi kể từ khi tôi viết các applet, nhưng tôi không nghĩ rằng bạn có thể thiết lập điều này từ applet. Rõ ràng, bạn có thể đặt kích thước heap của JVM cho JVM của trình duyệt từ bảng điều khiển trình cắm thêm Java, nhưng đó là điều mà người dùng phải làm trước khi bắt đầu applet của bạn.

Bạn luôn có thể kiểm tra http://forums.sun.com/thread.jspa?threadID=523105&messageID=3033288 để thảo luận thêm về chủ đề.

+1

liên kết bạn nói "Bạn luôn có thể kiểm tra" đã chết - http://forums.sun.com/thread.jspa?threadID=523105&messageID=3033288 – gnat

5

Sử dụng JavaConsole -> Java -> Cài đặt thời gian chạy Java Applet để xác định phân bổ bộ nhớ ban đầu và bộ nhớ tối đa (sử dụng -Xms128 -Xmx512 hoặc tương tự).

Tôi hiểu rằng các phiên bản mới hơn của Java (6?) Cho phép các nhà phát triển một số ảnh hưởng trên các thiết lập này nhưng tôi đã không có được nêu ra ...

1

Thực ra, khởi động applet bên trong Java Web Start (JNLP) cho phép bạn chỉ định cùng một ràng buộc bộ nhớ mà bạn muốn cho một ứng dụng Java thông thường. (Xms và Xmx).

JNLP hỗ trợ các applet theo mặc định, do đó, không cần thay đổi mã trong hầu hết các trường hợp.

+2

Vấn đề với JNLP là bạn không thể khởi động ứng dụng được nhúng trong trang html. – Horcrux7

1

Có khả năng để thay đổi giá trị này, bằng cách thiết lập paramether trong ví dụ Nó hoạt động kể từ java1.6.0_10 chi tiết tại https://jdk6.dev.java.net/plugin2/

2

Thêm vào file JNLP các dòng dưới đây trong "tài nguyên"

j2se version="1.6+" initial-heap-size="256m" max-heap-size="1024m" 
    href="http://java.sun.com/products/autodl/j2se" /" 
-1

Có thể thực hiện theo một vài cách:

i) Bằng cách tăng giá trị Xms, Xmx và Xmn cùng với đối số java MaxPermSize trong java c bảng điều khiển ontrol; và/hoặc

ii) bằng cách thêm thẻ java_arguments PARAM cho đối tượng thẻ trong jsp/html:

Liên kết này ném nhiều ánh sáng hơn về vấn đề này: http://technoguider.com/2015/06/memory-requirements-for-an-applet/

Các vấn đề liên quan