- 共享一下桌面,开启摄像头,打开人像画中画,并将人像调整到最大,露出上半身和双手
- 说一下这段代码输出的结果
func modifySlice(s []int) {
s[0] = 99
s = append(s, 4)
fmt.Println("Inside modifySlice:", s)
}
func main() {
slice := make([]int, 0, 6)
slice = append(slice, 1)
slice = append(slice, 2)
slice = append(slice, 3)
modifySlice(slice)
fmt.Println("After modifySlice:", slice)
}
- 这段代码的输出是什么?
func main() {
wg := sync.WaitGroup{}
for i := 0; i < 10; i++ {
wg.Add(1)
go func(wg *sync.WaitGroup) {
fmt.Println(i)
wg.Done()
}(&wg)
}
}
- 三个 goroutine,两个goroutine计算(不打印),一个加到 1 万,一个加到 2 万;第三个等他们两个算完,将他们两个的和打印出来
func main() {
// 三个 goroutine,两个goroutine计算(不打印),一个加到 1 万,一个加到 2 万
// 第三个等他们两个算完,将他们两个的和打印出来
var wg sync.WaitGroup
sum1Chan := make(chan int)
sum2Chan := make(chan int)
// 第一个
wg.Add(1)
go func() {
defer wg.Done()
sum := 0
for i := 1; i <= 10000; i++ {
sum += i
}
sum1Chan <- sum
}()
// 第二个
wg.Add(1)
go func() {
defer wg.Done()
sum := 0
for i := 1; i <= 20000; i++ {
sum += i
}
sum2Chan <- sum
}()
// 第三个
wg.Add(1)
go func() {
defer wg.Done()
sum1 := <-sum1Chan
sum2 := <-sum2Chan
fmt.Println("sum: ", sum1+sum2)
}()
wg.Wait()
}
- goroutine跟进程跟线程直接的关系
- goroutine是怎么调度的
- 一个场景题
#腾娱互动##Golang社招##后台开发##光子工作室群##腾讯#