函数
GioFileMeasureProgressCallback
自2.38开始
声明
void
(* GFileMeasureProgressCallback) (
gboolean reporting,
guint64 current_size,
guint64 num_dirs,
guint64 num_files,
gpointer data
)
描述 [源码]
此回调类型由g_file_measure_disk_usage()
在测量目录占用的磁盘空间大小时生成周期性进度报告。
这些调用基于最大努力原则,并非所有类型的GFile
都支持它们。然而,至少会立即调用一次。
如果没有支持,则reporting
将被设置为FALSE
(其他值将为未知)并且不会再进行调用。否则,在第一次(立即)调用时,reporting
将设置为TRUE
,其他值都为零。这样,您可以无缝地知道显示哪种类型的进度UI
。
对于g_file_measure_disk_usage()
,回调是直接进行的。对于g_file_measure_disk_usage_async()
,回调是通过调用线程的默认主上下文进行的(即,最终异步结果将被报告的方式相同)。
current_size
与操作请求的相同单位(见G_FILE_MEASURE_APPARENT_SIZE
)。
更新的频率由实现定义,但理想情况下大约每200ms更新一次。
最后一个进度回调可能与最终结果相等,也可能不相等。始终检查异步结果以获取最终值。
自2.38可用