72 */
73 void resize(final long len) {
74 // note: may throw OOME:
75 this.address = UNSAFE.reallocateMemory(address, len);
76 this.length = len;
77 if (LOG_UNSAFE_MALLOC) {
78 MarlinUtils.logInfo(System.currentTimeMillis()
79 + ": OffHeapArray.reallocateMemory = "
80 + len + " to addr = " + this.address);
81 }
82 }
83
84 void free() {
85 UNSAFE.freeMemory(this.address);
86 if (LOG_UNSAFE_MALLOC) {
87 MarlinUtils.logInfo(System.currentTimeMillis()
88 + ": OffHeapArray.freeMemory = "
89 + this.length
90 + " at addr = " + this.address);
91 }
92 }
93
94 void fill(final byte val) {
95 UNSAFE.setMemory(this.address, this.length, val);
96 }
97 }
|
72 */
73 void resize(final long len) {
74 // note: may throw OOME:
75 this.address = UNSAFE.reallocateMemory(address, len);
76 this.length = len;
77 if (LOG_UNSAFE_MALLOC) {
78 MarlinUtils.logInfo(System.currentTimeMillis()
79 + ": OffHeapArray.reallocateMemory = "
80 + len + " to addr = " + this.address);
81 }
82 }
83
84 void free() {
85 UNSAFE.freeMemory(this.address);
86 if (LOG_UNSAFE_MALLOC) {
87 MarlinUtils.logInfo(System.currentTimeMillis()
88 + ": OffHeapArray.freeMemory = "
89 + this.length
90 + " at addr = " + this.address);
91 }
92 this.address = 0L;
93 }
94
95 void fill(final byte val) {
96 UNSAFE.setMemory(this.address, this.length, val);
97 }
98 }
|