summaryrefslogtreecommitdiff
path: root/src/runtime/chan.c
AgeCommit message (Collapse)AuthorFilesLines
2009-06-06move src/runtime -> src/lib/runtime;Russ Cox1-1024/+0
only automatic g4 mv here. R=r OCL=30002 CL=30007
2009-05-08move things out of sys into os and runtimeRuss Cox1-5/+5
R=r OCL=28569 CL=28573
2009-03-23add test for close/closed, fix a few implementation bugs.Russ Cox1-28/+30
R=ken OCL=26664 CL=26664
2009-03-13close/closed on chansKen Thompson1-33/+117
R=r OCL=26281 CL=26285
2009-03-12chan flags close/closed installedKen Thompson1-2/+47
runtime not finished. R=r OCL=26217 CL=26217
2009-01-27spellingKen Thompson1-5/+4
R=r OCL=23602 CL=23602
2009-01-26implement new restrictions on whatRuss Cox1-10/+2
can be compared/hashed. R=r DELTA=351 (201 added, 80 deleted, 70 changed) OCL=23423 CL=23481
2009-01-24bug in async select readKen Thompson1-19/+22
buganizer 1589219 channel is returning same values multiple times R=r OCL=23447 CL=23447
2009-01-16casify, cleanup sysRuss Cox1-5/+5
R=r OCL=22978 CL=22984
2008-12-19chan and map of [] and structRuss Cox1-8/+11
R=r DELTA=192 (145 added, 8 deleted, 39 changed) OCL=21609 CL=21614
2008-12-09chans and maps of interfacesRuss Cox1-16/+26
R=r DELTA=746 (729 added, 1 deleted, 16 changed) OCL=20858 CL=20858
2008-11-06bug in select defaultKen Thompson1-31/+36
R=r OCL=18741 CL=18741
2008-11-05select defaultKen Thompson1-9/+7
R=r OCL=18646 CL=18646
2008-11-05more runtime support for chan select defaultRuss Cox1-1/+39
R=ken OCL=18630 CL=18630
2008-11-05runtime support for default in select.Russ Cox1-2/+13
assumes cas->send == 2 for default case. R=ken OCL=18628 CL=18628
2008-09-26test and fix non-blocking chan ops on buffered chansRuss Cox1-1/+18
R=ken DELTA=68 (19 added, 0 deleted, 49 changed) OCL=15966 CL=15969
2008-09-20another async select bugKen Thompson1-0/+1
R=r OCL=15599 CL=15599
2008-09-19fix bugs in asynch selectKen Thompson1-17/+51
R=r OCL=15586 CL=15586
2008-09-09go threads for OS XRuss Cox1-23/+29
R=r OCL=14944 CL=15013
2008-08-05kill trailing white space.Russ Cox1-1/+1
(apparently my first attempt didn't work.) R=r OCL=13888 CL=13888
2008-08-05* comment, clean up schedulerRuss Cox1-1/+3
* rewrite lock implementation to be correct (tip: never assume that an algorithm you found in a linux man page is correct.) * delete unneeded void* arg from clone fn * replace Rendez with Note * comment mal better * use 6c -w, fix warnings * mark all assembly functions 7 R=r DELTA=828 (338 added, 221 deleted, 269 changed) OCL=13884 CL=13886
2008-08-04first cut at multithreading. works on Linux.Russ Cox1-8/+34
* kick off new os procs (machs) as needed * add sys·sleep for testing * add Lock, Rendez * properly lock mal, sys·newproc, scheduler * linux syscall arg #4 is in R10, not CX * chans are not multithread-safe yet * multithreading disabled by default; set $gomaxprocs=2 (or 1000) to turn it on This should build on OS X but may not. Rob and I will fix soon after submitting. TBR=r OCL=13784 CL=13842
2008-07-26select/chanKen Thompson1-185/+216
R=r DELTA=517 (137 added, 98 deleted, 282 changed) OCL=13495 CL=13495
2008-07-25selectKen Thompson1-8/+1
R=r APPROVED=r DELTA=41 (24 added, 13 deleted, 4 changed) OCL=13480 CL=13480
2008-07-25selectKen Thompson1-40/+119
R=r APPROVED=r DELTA=147 (94 added, 14 deleted, 39 changed) OCL=13477 CL=13477
2008-07-25read selectKen Thompson1-5/+66
R=r APPROVED=r DELTA=120 (108 added, 0 deleted, 12 changed) OCL=13468 CL=13468
2008-07-24selectKen Thompson1-21/+226
R=r APPROVED=r DELTA=638 (433 added, 21 deleted, 184 changed) OCL=13426 CL=13438
2008-07-20start of selectKen Thompson1-21/+135
random bugs fixed SVN=128149
2008-07-16back out last chan fixKen Thompson1-6/+4
allow print of pointers SVN=127548
2008-07-16chan bool offset bugKen Thompson1-5/+8
SVN=127537
2008-07-15new chan syntaxKen Thompson1-2/+45
SVN=127437
2008-07-14chan asynchKen Thompson1-5/+45
SVN=127121
2008-07-14synch chanKen Thompson1-8/+86
SVN=127055
2008-07-13chanKen Thompson1-0/+28
SVN=126959
2008-07-13chanKen Thompson1-0/+75
SVN=126958