Sha256: 6d25a9790e18158eb4e439c9863d39ab21eced9a4c3af57966f8ae5297713407

Contents?: true

Size: 1.14 KB

Versions: 4

Compression:

Stored size: 1.14 KB

Contents

= async-fu

async-fu improve your code with abilities to run long task in threaded way

== Examples

=== Simple usage

	require 'rubygems'
	require 'async_fu'
	
	class YourClass1
	  def hello
	    p 'start'
	    p 'list ' + Thread.list.join( ' ')
	    p 'main ' + Thread.main.to_s
	    p 'this ' + Thread.current.to_s
	    p 'end'
	  end
	end
	
	af = AsyncFu.new(YourClass1.new)
	af.hello

=== Inheritance usage

	require 'rubygems'
	require 'async_fu'
	
	class YourClass2 < AsyncFu
	  def hello
	    p 'start'
	    p 'list ' + Thread.list.join( ' ')
	    p 'main ' + Thread.main.to_s
	    p 'this ' + Thread.current.to_s
	    p 'end'
	  end
	end
	
	ai = YourClass2.new
	ai.hello

=== Thread exit solution

You don't need more using join method to lock threads, if you not use it for some reasons.

AsyncFu catch exit of ruby program and check for live threads pass main thread until they ended.

If you don't need this futures, you can switch it off by using exit method of AsyncFu class.

== TODO

=== 1.x.x

* callbacks
	
=== 2.x.x

* add mixin style

	class YourClass
		include async-fu
	end

== Copyright

Copyright (c) 2009 Amir Mamedov. See LICENSE for details.

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
amirka-async-fu-1.1.4 README.rdoc
amirka-async-fu-1.2.0 README.rdoc
amirka-async-fu-1.2.1 README.rdoc
amirka-async-fu-1.4.0 README.rdoc