mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-10-22 02:13:46 +00:00
udpsrc: optimize GstUdpSrc object for cache performance
Optimize GstUdpSrc for cache performance. Move the hot properties, which are used by the read function, to the top: @used_socket, @addr, @cancellable, @skip_first_bytes, @timeout, @retrieve_sender_address. Remove the unused property @ttl. Where needed reorder so that holes are avoided (the 64-bit @timeout) https://bugzilla.gnome.org/show_bug.cgi?id=772841
This commit is contained in:
parent
850e678813
commit
589019d8f5
1 changed files with 9 additions and 9 deletions
|
@ -47,32 +47,32 @@ typedef struct _GstUDPSrcClass GstUDPSrcClass;
|
||||||
struct _GstUDPSrc {
|
struct _GstUDPSrc {
|
||||||
GstPushSrc parent;
|
GstPushSrc parent;
|
||||||
|
|
||||||
|
/* our sockets */
|
||||||
|
GSocket *used_socket; /* hot */
|
||||||
|
GInetSocketAddress *addr; /* hot */
|
||||||
|
|
||||||
|
GCancellable *cancellable; /* hot */
|
||||||
|
|
||||||
/* properties */
|
/* properties */
|
||||||
|
gint skip_first_bytes; /* hot */
|
||||||
|
guint64 timeout; /* hot */
|
||||||
|
gboolean retrieve_sender_address; /* hot */
|
||||||
gchar *address;
|
gchar *address;
|
||||||
gint port;
|
gint port;
|
||||||
gchar *multi_iface;
|
gchar *multi_iface;
|
||||||
gint ttl;
|
|
||||||
GstCaps *caps;
|
GstCaps *caps;
|
||||||
gint buffer_size;
|
gint buffer_size;
|
||||||
guint64 timeout;
|
|
||||||
gint skip_first_bytes;
|
|
||||||
GSocket *socket;
|
GSocket *socket;
|
||||||
gboolean close_socket;
|
gboolean close_socket;
|
||||||
gboolean auto_multicast;
|
gboolean auto_multicast;
|
||||||
gboolean reuse;
|
gboolean reuse;
|
||||||
gboolean loop;
|
gboolean loop;
|
||||||
gboolean retrieve_sender_address;
|
|
||||||
|
|
||||||
/* stats */
|
/* stats */
|
||||||
guint max_size;
|
guint max_size;
|
||||||
|
|
||||||
/* our sockets */
|
|
||||||
GSocket *used_socket;
|
|
||||||
GInetSocketAddress *addr;
|
|
||||||
gboolean external_socket;
|
gboolean external_socket;
|
||||||
|
|
||||||
gboolean made_cancel_fd;
|
gboolean made_cancel_fd;
|
||||||
GCancellable *cancellable;
|
|
||||||
|
|
||||||
/* memory management */
|
/* memory management */
|
||||||
GstAllocator *allocator;
|
GstAllocator *allocator;
|
||||||
|
|
Loading…
Reference in a new issue