indexing description: "producer thread" 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 T_ELOG_QUEUE_PRODUCER inherit THREAD creation make feature -- Initialization make (buf: ELOG_CONCURRENT_LINKED_QUEUE_CV [STRING]) is -- Initialize parameters, and launch thread. do buffer := buf end feature -- Access buffer: ELOG_CONCURRENT_LINKED_QUEUE_CV [STRING] -- queue feature {NONE} -- Implementation execute is -- x local i: INTEGER do from i := 0 until buffer.is_closed loop buffer.put ("get "+i.out) io.put_string ("put "+i.out+"%N") i := i + 1 --yield end end end