在你的 marshal(UploadSiteHostedPicturesRequestType arg0) 方法你有线
marshal(UploadSiteHostedPicturesRequestType arg0)
// Is this line causing memory leak? JAXBContext arg1 = JAXBContext.newInstance(new Class[] { UploadSiteHostedPicturesRequestType.class });
虽然这行不是严格的内存泄漏, 它占用大量内存,占用大量CPU时间, 因为它创造了一个新的沉重 JAXBContext 每次都是对象。 从这个方法返回后 局部变量 JAXBContext arg1 不再被引用, 但它会留在内存中,直到它被垃圾收集 (这可能不会发生很长时间)。
JAXBContext
JAXBContext arg1
您应该替换此行
JAXBContext arg1 = JAXBContextFactory.getInstance().getJaxBContext(UploadSiteHostedPicturesRequestType.class);
这应该可以大大改善内存使用和CPU时间。