悟空在此 2015-01-12 06:39 采纳率: 0%
浏览 2664

java代码的在线运行,对其内存限制,时间检测等问题[ga]

基本需求类似[java在线代码编译运行],多个客户都可以各自通过web浏览器输入java代码,
然后点击执行java代码,输出结果。
我是通过(Class thisClass = Class.forName(className,true,ClassLoader.getSystemClassLoader()); 来实现的)
目前比较担心某个用户输入的java代码可能是个死循环(如:while(true){xxxx}),
或者高内存使用(如:大规模的向内存里添加字符串)

这样可能会由于一个用户的代码问题,致使整个jvm宕机。

因此,请问,一个用户在执行java代码时候,可有什么方法,对这段代码的内存的使用率,
或者程序的运行时间,进行限制或者检测?
(如果超过一定内存使用量,或者一定运行时间,就终止运行)

有个在线运行的网站:http://ideone.com/
这里就可以对时间进行检测,超过一分钟就终止。

请问这是怎样检测执行操作的?

整个思路不是很清楚,请高手帮忙解答下,
谢谢。

  • 写回答

2条回答 默认 最新

  • oyljerry 2015-01-12 09:29
    关注

    查看jvm进程信息,ps获取进程id,然后查看top -p pid

    评论

报告相同问题?

悬赏问题

  • ¥50 power BI 从Mysql服务器导入数据,但连接进去后显示表无数据
  • ¥15 (关键词-阻抗匹配,HFSS,RFID标签)
  • ¥50 sft下载大文阻塞卡死
  • ¥15 机器人轨迹规划相关问题
  • ¥15 word样式右侧翻页键消失
  • ¥15 springboot+vue 集成keycloak sso到阿里云
  • ¥15 win7系统进入桌面过一秒后突然黑屏
  • ¥30 backtrader对于期货交易的现金和资产计算的问题
  • ¥15 求C# .net4.8小报表工具
  • ¥15 安装虚拟机时出现问题