v1 Mit synchroner Pull-Zustellung abonnieren (NICHT MEHR VERFÜGBAR)
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
(EINGESTELLT) Mit synchroner Pull-Zustellung abonnieren
Codebeispiel
Nächste Schritte
Wenn Sie nach Codebeispielen für andere Google Cloud -Produkte suchen und filtern möchten, können Sie den Google Cloud -Beispielbrowser verwenden.
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],[],[],[],null,["# v1 Subscribe with synchronous pull (DEPRECATED)\n\n(DEPRECATED) Subscribe with synchronous pull\n\nCode sample\n-----------\n\n### Go\n\n\nBefore trying this sample, follow the Go setup instructions in the\n[Pub/Sub quickstart using\nclient libraries](/pubsub/docs/quickstart-client-libraries).\n\n\nFor more information, see the\n[Pub/Sub Go API\nreference documentation](https://godoc.org/cloud.google.com/go/pubsub).\n\n\nTo authenticate to Pub/Sub, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n import (\n \t\"context\"\n \t\"fmt\"\n \t\"io\"\n \t\"sync/atomic\"\n \t\"time\"\n\n \t\"cloud.google.com/go/pubsub\"\n )\n\n func pullMsgsSync(w io.Writer, projectID, subID string) error {\n \t// projectID := \"my-project-id\"\n \t// subID := \"my-sub\"\n \tctx := context.Background()\n \tclient, err := pubsub.https://cloud.google.com/go/docs/reference/cloud.google.com/go/pubsub/latest/index.html#cloud_google_com_go_pubsub_Client_NewClient(ctx, projectID)\n \tif err != nil {\n \t\treturn fmt.Errorf(\"pubsub.NewClient: %w\", err)\n \t}\n \tdefer client.Close()\n\n \tsub := client.Subscription(subID)\n\n \t// Turn on synchronous mode. This makes the subscriber use the Pull RPC rather\n \t// than the StreamingPull RPC, which is useful for guaranteeing MaxOutstandingMessages,\n \t// the max number of messages the client will hold in memory at a time.\n \tsub.ReceiveSettings.Synchronous = true\n \tsub.ReceiveSettings.MaxOutstandingMessages = 10\n\n \t// Receive messages for 10 seconds, which simplifies testing.\n \t// Comment this out in production, since `Receive` should\n \t// be used as a long running operation.\n \tctx, cancel := context.WithTimeout(ctx, 10*time.Second)\n \tdefer cancel()\n\n \tvar received int32\n \terr = sub.Receive(ctx, func(_ context.Context, msg *pubsub.Message) {\n \t\tfmt.Fprintf(w, \"Got message: %q\\n\", string(msg.Data))\n \t\tatomic.AddInt32(&received, 1)\n \t\tmsg.Ack()\n \t})\n \tif err != nil {\n \t\treturn fmt.Errorf(\"sub.Receive: %w\", err)\n \t}\n \tfmt.Fprintf(w, \"Received %d messages\\n\", received)\n\n \treturn nil\n }\n\n### Ruby\n\n\nBefore trying this sample, follow the Ruby setup instructions in the\n[Pub/Sub quickstart using\nclient libraries](/pubsub/docs/quickstart-client-libraries).\n\n\nFor more information, see the\n[Pub/Sub Ruby API\nreference documentation](https://googleapis.dev/ruby/google-cloud-pubsub/latest/Google/Cloud/PubSub.html).\n\n\nTo authenticate to Pub/Sub, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n # subscription_id = \"your-subscription-id\"\n\n pubsub = Google::Cloud::https://cloud.google.com/ruby/docs/reference/google-cloud-pubsub/latest/Google-Cloud.html.new\n\n subscription = pubsub.subscription subscription_id\n subscription.pull(immediate: false).each do |message|\n puts \"Message pulled: #{message.data}\"\n message.acknowledge!\n end\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=pubsub)."]]