Explorar o código

Support parallel kill

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
Zhang Wei %!s(int64=8) %!d(string=hai) anos
pai
achega
d2bb3aba7e
Modificáronse 1 ficheiros con 4 adicións e 1 borrados
  1. 4 1
      cli/command/container/kill.go

+ 4 - 1
cli/command/container/kill.go

@@ -39,8 +39,11 @@ func NewKillCommand(dockerCli *command.DockerCli) *cobra.Command {
 func runKill(dockerCli *command.DockerCli, opts *killOptions) error {
 	var errs []string
 	ctx := context.Background()
+	errChan := parallelOperation(ctx, opts.containers, func(ctx context.Context, container string) error {
+		return dockerCli.Client().ContainerKill(ctx, container, opts.signal)
+	})
 	for _, name := range opts.containers {
-		if err := dockerCli.Client().ContainerKill(ctx, name, opts.signal); err != nil {
+		if err := <-errChan; err != nil {
 			errs = append(errs, err.Error())
 		} else {
 			fmt.Fprintf(dockerCli.Out(), "%s\n", name)