![]() |
![]() |
![]() |
![]() |
A GMimeStream implementation using a memory-mapped file backing store. This may be faster than GMimeStreamFs or GMimeStreamFile but you'll have to do your own performance checking to be sure for your particular application/platform.
GMimeStream * g_mime_stream_mmap_new (int fd
,int prot
,int flags
);
Creates a new GMimeStreamMmap object around fd
.
GMimeStream * g_mime_stream_mmap_new_with_bounds (int fd
,int prot
,int flags
,gint64 start
,gint64 end
);
Creates a new GMimeStreamMmap object around fd
with bounds start
and end
.
gboolean
g_mime_stream_mmap_get_owner (GMimeStreamMmap *stream
);
Gets whether or not stream
owns the backend file descriptor.
Since: 3.2
void g_mime_stream_mmap_set_owner (GMimeStreamMmap *stream
,gboolean owner
);
Sets whether or not stream
owns the backend file descriptor.
Note: owner
should be TRUE
if the stream should close()
the
backend file descriptor when destroyed or FALSE
otherwise.
Since: 3.2
struct GMimeStreamMmap { GMimeStream parent_object; gboolean owner; gboolean eos; int fd; char *map; size_t maplen; };
A memory-mapped GMimeStream.
GMimeStream |
parent GMimeStream |
|
gboolean |
|
|
gboolean |
|
|
int |
file descriptor |
|
char * |
memory map |
|
size_t |
length of the memory map |