print ubyte[] as (ascii) string
eugene
dee0xeed at gmail.com
Fri Jan 7 21:26:59 UTC 2022
On Friday, 7 January 2022 at 20:40:02 UTC, Adam D Ruppe wrote:
> On Friday, 7 January 2022 at 20:33:05 UTC, eugene wrote:
>> * python guys have memory leaks
>> * js guys have memory leaks
>
> GC isn't actually there to prevent memory leaks.
Aha, unless you'll build GC into OS core :)
> Its main job is to guard against use-after-free memory
> corruption bugs
```c
if (ptr) {
free(ptr);
ptr = NULL;
}
...
if (NULL == someptr)
BUG()/PANIC()/WHATEVER()
```
> because computers don't have infinite memory
first time I've heard this )))
tell that to py/js super-coders :)
> where the lifetime is trivial, you can easily do it yourself to
> optimize memory use. But when it isn't so obvious, you can use
> the GC to play it safe at the cost of a lil more memory use.
other way around
* when the lifetime is trivial (whithin a function, including
thread function) - trust GC
* when the lifetime is not trivial (ptr goes through or a
self-pipe or similar) - GC has no info about that
More information about the Digitalmars-d-learn
mailing list