创建String对象的性能问题

String message = new String(consumer.nextDelivery().getBody(), StandardCharsets.UTF_8);

在mq的consumer中,会源源不断接收到byte[],然后再将数组转换成String.

这样不停的new String 对象的话会导致内存占用过多,性能有问题吧?

请教各位大侠有好的解决方案吗?

只要一个方法内部不产生太多对象就行了,方法调用结束后会就会回收,这种回收都是Young GC,Young GC的速度都是很快的

不会,这种一般都是局部对象,离开脱离作用域后会被gc,新生代的数据都是朝生夕死

你想多了,这样写不会的,到时候GC会回收没被使用的变量

  • spring boot的validate的提示信息如何做成多语言
  • tree-multimap 插件如何获取选中的id?
  • 使用Netty Demo报错
  • javascript 获取服务端时间 ?
  • 求问tomcat8,如何设置二级域名session共享session呢?
  • mysql超过最大连接数?
  • 上传过程中 返回这个信息502 Bad Gateway
  • 业务接口应该返回的值应该是什么?
  • 项目无法识别maven下载的tomcat的jar包?
  • springMVC和struts2孰优孰劣?
  • 可不可以把图片以二进制存到数据库,然后canvas 加载 二进制来达到保护图片版权信息的目的?,不考虑截图