indexing description: "benchmark asynchronous logging. " library: "elogger" copyright: "Copyright (c) 2006, AXA Rosenberg, and others (see copyright.txt)" author: "Ulrich Weiss, and others" license: "Eiffel Forum License v2 (see forum.txt)" date: "$Date: $" revision: "$Revision: $" archive: "$Archive: $" class ELOG_BENCHMARK_LOGGING_ASYNC inherit ELOG_BENCHMARK_CASE ELOG_SEVERITY_CONSTANTS feature -- Access run is -- run the benchmark local h: ELOG_HIERARCHY a: ELOG_TRASH_APPENDER i: INTEGER do create h.make (Warning_severity) create a.make ("trashappender", False) h.root.add_appender (a) start from i := 0 until i > iterations loop h.root.log_warning (create {ELOG_SIMPLE_EVENT}.make_without_time ("aaaaabbbbb")) i := i + 1 end a.wait (False) stop h.close_all io.putstring ("async logging: "+iterations_per_second.rounded.out+"it/s, "+cycles_per_iteration.out+"cycles/it%N") end iterations: INTEGER_64 is 1_000_000 -- nr of iterations end