php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
mysqlnd_statistics.h File Reference

Go to the source code of this file.

Macros

#define MYSQLND_STATS_LOCK(stats)
 
#define MYSQLND_STATS_UNLOCK(stats)
 
#define MYSQLND_STATS_UPDATE_VALUE(stats, statistic, value)
 
#define MYSQLND_DEC_STATISTIC(enabler, stats, statistic)
 
#define MYSQLND_INC_STATISTIC(enabler, stats, statistic)
 
#define MYSQLND_INC_STATISTIC_W_VALUE(enabler, stats, statistic, value)
 
#define MYSQLND_INC_STATISTIC_W_VALUE2(enabler, stats, statistic1, value1, statistic2, value2)
 
#define MYSQLND_INC_STATISTIC_W_VALUE3(enabler, stats, statistic1, value1, statistic2, value2, statistic3, value3)
 

Functions

PHPAPI void mysqlnd_stats_init (MYSQLND_STATS **stats, const size_t statistic_count, const bool persistent)
 
PHPAPI void mysqlnd_stats_end (MYSQLND_STATS *stats, const bool persistent)
 
PHPAPI void mysqlnd_fill_stats_hash (const MYSQLND_STATS *const stats, const MYSQLND_STRING *names, zval *return_value ZEND_FILE_LINE_DC)
 

Macro Definition Documentation

◆ MYSQLND_DEC_STATISTIC

#define MYSQLND_DEC_STATISTIC ( enabler,
stats,
statistic )
Value:
{ \
enum_mysqlnd_collected_stats _s = (statistic);\
MYSQLND_STATS * _p_s = (MYSQLND_STATS *) (stats); \
if ((enabler) && _p_s && _s != _p_s->count) { \
MYSQLND_STATS_UPDATE_VALUE(_p_s, _s, -1); \
}\
}
enum mysqlnd_collected_stats enum_mysqlnd_collected_stats
struct st_mysqlnd_stats MYSQLND_STATS

Definition at line 36 of file mysqlnd_statistics.h.

◆ MYSQLND_INC_STATISTIC

#define MYSQLND_INC_STATISTIC ( enabler,
stats,
statistic )
Value:
{ \
enum_mysqlnd_collected_stats _s = (statistic);\
MYSQLND_STATS * _p_s = (MYSQLND_STATS *) (stats); \
if ((enabler) && _p_s && _s != _p_s->count) { \
MYSQLND_STATS_UPDATE_VALUE(_p_s, _s, 1); \
}\
}

Definition at line 45 of file mysqlnd_statistics.h.

◆ MYSQLND_INC_STATISTIC_W_VALUE

#define MYSQLND_INC_STATISTIC_W_VALUE ( enabler,
stats,
statistic,
value )
Value:
{ \
enum_mysqlnd_collected_stats _s = (statistic);\
MYSQLND_STATS * _p_s = (MYSQLND_STATS *) (stats); \
if ((enabler) && _p_s && _s != _p_s->count) { \
uint64_t v = (uint64_t) (value); \
MYSQLND_STATS_UPDATE_VALUE(_p_s, _s, v); \
}\
}
uint32_t v
Definition cdf.c:1237
value

Definition at line 54 of file mysqlnd_statistics.h.

◆ MYSQLND_INC_STATISTIC_W_VALUE2

#define MYSQLND_INC_STATISTIC_W_VALUE2 ( enabler,
stats,
statistic1,
value1,
statistic2,
value2 )
Value:
{ \
MYSQLND_STATS * _p_s = (MYSQLND_STATS *) (stats); \
if ((enabler) && _p_s) { \
uint64_t v1 = (uint64_t) (value1); \
uint64_t v2 = (uint64_t) (value2); \
enum_mysqlnd_collected_stats _s1 = (statistic1);\
enum_mysqlnd_collected_stats _s2 = (statistic2);\
if (_s1 != _p_s->count) MYSQLND_STATS_UPDATE_VALUE(_p_s, _s1, v1); \
if (_s2 != _p_s->count) MYSQLND_STATS_UPDATE_VALUE(_p_s, _s2, v2); \
}\
}
count(Countable|array $value, int $mode=COUNT_NORMAL)
foreach($dp as $el) foreach( $dp as $el) if( $pass2< 2) echo ""
#define MYSQLND_STATS_UPDATE_VALUE(stats, statistic, value)

Definition at line 64 of file mysqlnd_statistics.h.

◆ MYSQLND_INC_STATISTIC_W_VALUE3

#define MYSQLND_INC_STATISTIC_W_VALUE3 ( enabler,
stats,
statistic1,
value1,
statistic2,
value2,
statistic3,
value3 )
Value:
{ \
MYSQLND_STATS * _p_s = (MYSQLND_STATS *) (stats); \
if ((enabler) && _p_s) { \
uint64_t v1 = (uint64_t) (value1); \
uint64_t v2 = (uint64_t) (value2); \
uint64_t v3 = (uint64_t) (value3); \
enum_mysqlnd_collected_stats _s1 = (statistic1);\
enum_mysqlnd_collected_stats _s2 = (statistic2);\
enum_mysqlnd_collected_stats _s3 = (statistic3);\
if (_s1 != _p_s->count) MYSQLND_STATS_UPDATE_VALUE(_p_s, _s1, v1); \
if (_s2 != _p_s->count) MYSQLND_STATS_UPDATE_VALUE(_p_s, _s2, v2); \
if (_s3 != _p_s->count) MYSQLND_STATS_UPDATE_VALUE(_p_s, _s3, v3); \
}\
}

Definition at line 77 of file mysqlnd_statistics.h.

◆ MYSQLND_STATS_LOCK

#define MYSQLND_STATS_LOCK ( stats)

Definition at line 25 of file mysqlnd_statistics.h.

◆ MYSQLND_STATS_UNLOCK

#define MYSQLND_STATS_UNLOCK ( stats)

Definition at line 26 of file mysqlnd_statistics.h.

◆ MYSQLND_STATS_UPDATE_VALUE

#define MYSQLND_STATS_UPDATE_VALUE ( stats,
statistic,
value )
Value:
{ \
MYSQLND_STATS_LOCK(stats); \
(stats)->values[(statistic)] += (value); \
MYSQLND_STATS_UNLOCK(_p_s); \
}

Definition at line 29 of file mysqlnd_statistics.h.

Function Documentation

◆ mysqlnd_fill_stats_hash()

PHPAPI void mysqlnd_fill_stats_hash ( const MYSQLND_STATS *const stats,
const MYSQLND_STRING * names,
zval *return_value ZEND_FILE_LINE_DC )

Definition at line 198 of file mysqlnd_statistics.c.

◆ mysqlnd_stats_end()

PHPAPI void mysqlnd_stats_end ( MYSQLND_STATS * stats,
const bool persistent )

Definition at line 229 of file mysqlnd_statistics.c.

◆ mysqlnd_stats_init()

PHPAPI void mysqlnd_stats_init ( MYSQLND_STATS ** stats,
const size_t statistic_count,
const bool persistent )

Definition at line 215 of file mysqlnd_statistics.c.