forked from LeenkxTeam/LNXSDK
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			952 B
		
	
	
	
		
			Haxe
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			952 B
		
	
	
	
		
			Haxe
		
	
	
	
	
	
| import sys.thread.Thread;
 | |
| import sys.io.File;
 | |
| 
 | |
| @:cppInclude("./ThreadCode.cpp")
 | |
| class Test
 | |
| {
 | |
|    static var mainThread:Thread;
 | |
| 
 | |
|    @:native("runThread")
 | |
|    extern static function createNativeThread():Void;
 | |
| 
 | |
|    public static function callFromThread()
 | |
|    {
 | |
|       trace("Same:" + (mainThread==Thread.current()) );
 | |
|       mainThread.sendMessage("Done");
 | |
|    }
 | |
| 
 | |
|    public static function main()
 | |
|    {
 | |
|       var me = Thread.current();
 | |
|       mainThread = me;
 | |
|       Thread.create( function() {
 | |
|         File.copy("a.txt","b.txt");
 | |
|         me.sendMessage("Done");
 | |
|         trace("Same thread:" + (me==Thread.current()) );
 | |
|         } );
 | |
|       var result = Thread.readMessage(true);
 | |
|       trace(result);
 | |
| 
 | |
|       for(x in 0...20)
 | |
|       {
 | |
|          trace("call...");
 | |
|          createNativeThread();
 | |
|          trace("zzz...");
 | |
|          Sys.sleep(1);
 | |
|          var result = Thread.readMessage(true);
 | |
|          trace(result);
 | |
|       }
 | |
|    }
 | |
| }
 |