Hello!

  I'm having further issues with the `concurrency.distributed` vocab. I was 
trying to pass some data between two Factor instances, but failed, even though 
the total data volume was about 2Mb. After spending some considerable time 
debugging my code (because I'm only learning to use this vocab) I found that 
the following code reproduces the issue.

Factor instance 1 (codename "Blackhole"):

USING: concurrency.distributed concurrency.messaging io.servers threads ;
9010 local-server start-node
[ [ receive drop t ] loop ] "black-hole" [ spawn ] keep register-remote-thread

Factor instance 2 (codename redacted):

USING: concurrency.distributed concurrency.messaging io.servers ;
9010 local-server "black-hole" <remote-thread>
[ f swap send t ] curry loop

For about 10 seconds from the start of the loop in instance 2 both Factor 
processes consume 100% of a CPU core each. After about 10 seconds the CPU use 
by the Blackhole drops to an idle value, while instance 2 keep going full speed.

After another 50 seconds (about one minute since the start of the experiment) 
the second instance throws the following string:
"You were not connected because a duplicate name exists on the network. If 
joining a domain, go to System in Control Panel to change the computer name and 
try again. If joining a workgroup, choose another workgroup name."

It seems that I overloaded the system somehow, but I don't see me doing 
anything illegal. Can you guys help me figure out what's going on?

  OS: Windows 10x64.

---=====--- 
 Александр

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to