To make the development process more interactive, kosmo needs to speed up his schema reflection.
This could be relatively easy get done by using go routines for each type and resolver reflection.
To avoid deadlocks the used cache implementation must support parallel access.
Starting point:
|
func (c *cache) Read(key string, fallback func(setter SetCache)) interface{} { |
Before the implementation starts, first check the following concurrency and parallelism rule:
https://github.com/golang/go/wiki/CodeReviewComments#synchronous-functions
and visit popular libraries to check how they implemented parallelism inside a library.
To make the development process more interactive, kosmo needs to speed up his schema reflection.
This could be relatively easy get done by using go routines for each type and resolver reflection.
To avoid deadlocks the used cache implementation must support parallel access.
Starting point:
kosmo/cache.go
Line 24 in 5518e08
Before the implementation starts, first check the following concurrency and parallelism rule:
https://github.com/golang/go/wiki/CodeReviewComments#synchronous-functions
and visit popular libraries to check how they implemented parallelism inside a library.