note
	description: "Class defining thread attributes."
	legal: "See notice at end of class."
	status: "See notice at end of class."
	date: "$Date: 2017-03-30 11:54:40 +0000 (Thu, 30 Mar 2017) $"
	revision: "$Revision: 100070 $"

class interface
	THREAD_ATTRIBUTES

create 
	make

feature -- Attribute change

	set_priority (prio: like priority)
			-- Set thread priority to prio.
		require
			valid_priority: (prio >= min_priority) and (prio <= max_priority)
		ensure
			priority_set: priority = prio

	set_stack_size (s: like stack_size)
			-- Set stack_size to s.
		ensure
			stack_size_set: stack_size = s
	
feature -- Access

	priority: INTEGER_32
			-- Current thread priority

	stack_size: NATURAL_64
			-- Size of the call stack reserved for launching the thread. If 0 the default size for
			-- the current platform.

	default_priority: INTEGER_32
			-- Get default thread priority for the current architecture.

	min_priority: INTEGER_32
			-- Get minimum thread priority for the current architecture.

	max_priority: INTEGER_32
			-- Get maximum thread priority for the current architecture.
	
feature -- Implementation

	structure_size: INTEGER_32
			-- Size to allocate (in bytes).
	
invariant
	priority_bounded: min_priority <= priority and priority <= max_priority

note
	copyright: "Copyright (c) 1984-2017, Eiffel Software and others"
	license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)"
	source: "[
		Eiffel Software
		5949 Hollister Ave., Goleta, CA 93117 USA
		Telephone 805-685-1006, Fax 805-685-6869
		Website http://www.eiffel.com
		Customer support http://support.eiffel.com
	]"

end -- class THREAD_ATTRIBUTES

Generated by ISE EiffelStudio