Over 11,000 five-star assets
Rated by 85,000+ customers
Supported by 100,000+ forum members
Every asset moderated by Unity
1/6
Work with multiple threads easily:
Standalone builds, Windows store (UWP), webplayer, iOS and Android
<
Documentation
Forum's thread (examples and support)
To build a truly responsive Unity game, you must keep long-running operations off of the main thread, and be careful to avoid blocking the main thread. This means you will need to execute various operations in the background.
Unity's coroutines are ALWAYS executed on the main Thread
Executing threads in the background implies carefully go back to the main thread when you have to manipulate Unity's objects.
Piece of cake with this package, just use this sentence:
Task.RunInMainThread(SomeFunction);
SomeFunction is guaranteed to be executed in the main thread
Of course i's possible to use lambda expressions:
Task.RunInMainThread(()=>
{
// This code will execute in the main thread
});
But this asset also makes working with threads a pleasant experience:
To create a thread just use the following syntax:
Task.Run (DoSomeWorkOnABackgroundThread);
Creating a thread that returns some value (an integer in this example):
Task<int>.Run (CalculateSomeIntegerInTheBackground),
Of course you will want to receive the integer:
Task<int>.Run (CalculateSomeIntegerInTheBackground).ContinueWith(ThisFunctionReceivesTheIntegerAsParameter);
Or, maybe, you need to show that integer to the player (the function receiving it must be executed in the main thread):
Task<int>.Run (CalculateSomeIntegerInTheBackground).ContinueInMainThreadWith(ThisFunctionReceivesTheIntegerAsParameter);
These are just the basic features included in this package.
This package reimplements and extends the .NET System.Threading.Tasks namespace.
This namespace makes thread management easier for you by adding a class named Task. A task represents an asynchronous operation. Typically, a Task is returned from an asynchronous function and gives the ability to continue processing the result of the task.
A task is not tied to a particular threading model: it represents the work being done, not where it is executing. Tasks have many advantages over other methods of asynchronous programming such as callbacks and the event model.
You can learn more about tasks in Parse's website
Tested for standalone builds, windows store (UWP), web player, iOS and Android
Full source code is included, as well as many examples. I use this asset for my own projects, so I will keep improving and expanding it.
If you have any comments, doubts, feature request or just need some help implementing some multithreading behaviour just let me know in the forum's thread
Standalone builds, Windows store (UWP), webplayer, iOS and Android
<
Documentation
Forum's thread (examples and support)
To build a truly responsive Unity game, you must keep long-running operations off of the main thread, and be careful to avoid blocking the main thread. This means you will need to execute various operations in the background.
Unity's coroutines are ALWAYS executed on the main Thread
Executing threads in the background implies carefully go back to the main thread when you have to manipulate Unity's objects.
Piece of cake with this package, just use this sentence:
Task.RunInMainThread(SomeFunction);
SomeFunction is guaranteed to be executed in the main thread
Of course i's possible to use lambda expressions:
Task.RunInMainThread(()=>
{
// This code will execute in the main thread
});
But this asset also makes working with threads a pleasant experience:
To create a thread just use the following syntax:
Task.Run (DoSomeWorkOnABackgroundThread);
Creating a thread that returns some value (an integer in this example):
Task<int>.Run (CalculateSomeIntegerInTheBackground),
Of course you will want to receive the integer:
Task<int>.Run (CalculateSomeIntegerInTheBackground).ContinueWith(ThisFunctionReceivesTheIntegerAsParameter);
Or, maybe, you need to show that integer to the player (the function receiving it must be executed in the main thread):
Task<int>.Run (CalculateSomeIntegerInTheBackground).ContinueInMainThreadWith(ThisFunctionReceivesTheIntegerAsParameter);
These are just the basic features included in this package.
This package reimplements and extends the .NET System.Threading.Tasks namespace.
This namespace makes thread management easier for you by adding a class named Task. A task represents an asynchronous operation. Typically, a Task is returned from an asynchronous function and gives the ability to continue processing the result of the task.
A task is not tied to a particular threading model: it represents the work being done, not where it is executing. Tasks have many advantages over other methods of asynchronous programming such as callbacks and the event model.
You can learn more about tasks in Parse's website
Tested for standalone builds, windows store (UWP), web player, iOS and Android
Full source code is included, as well as many examples. I use this asset for my own projects, so I will keep improving and expanding it.
If you have any comments, doubts, feature request or just need some help implementing some multithreading behaviour just let me know in the forum's thread
Easy Threading
(35)
620 users have favourite this asset
(620)
$50
Seat
1
Updated price and taxes/VAT calculated at checkout
Refund policy
Secure checkout:

License agreement
Standard Unity Asset Store EULALicense type
File size
53.8 KB
Latest version
5.0
Latest release date
Aug 1, 2017
Original Unity version
5.3.4
Support
Visit siteRelated keywords
Quality assets
Over 11,000 five-star assets
Trusted
Rated by 85,000+ customers
Community support
Supported by 100,000+ forum members
Language
Feedback
Partners Program
PartnersUSD
EUR
Copyright © 2025 Unity Technologies
All prices are exclusive of tax
USD
EUR