GLib.aligned_alloc (original) (raw)
Function
GLibaligned_alloc
since: 2.72
Declaration [src]
gpointer
g_aligned_alloc (
gsize n_blocks,
gsize n_block_bytes,
gsize alignment
)
Description [src]
This function is similar to g_malloc(), allocating (n_blocks
* n_block_bytes
) bytes, but care is taken to align the allocated memory to with the given alignment value. Additionally, it will detect possible overflow during multiplication.
If the allocation fails (because the system is out of memory), the program is terminated.
Aligned memory allocations returned by this function can only be freed using g_aligned_free_sized()
or g_aligned_free().
Available since: 2.72
Parameters
n_blocks
Type: gsize
The number of blocks to allocate.
n_block_bytes
Type: gsize
The size of each block in bytes.
alignment
Type: gsize
The alignment to be enforced, which must be a positive power of 2 and a multiple of sizeof(void*)
.
Return value
Type: gpointer
The allocated memory.
The caller of the function takes ownership of the data, and is responsible for freeing it. |
---|
The return value can be NULL. |