Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #5878

[Python-de] Re: Code Style Review

From Marc Haber <mh+python-de@zugschlus.de>
Newsgroups de.comp.lang.python
Subject [Python-de] Re: Code Style Review
Date 2022-11-29 21:44 +0100
Message-ID <Y4ZvNHXvT2LMOmqS@torres.zugschlus.de> (permalink)
References <tm2jhn$1k5h8$1@news1.tnib.de> <480b80d21e58d280c437b4854bfc7cf1@posteo.de> <d60e87cd-51b9-084e-3fb6-d15b7588004d@chrisarndt.de> <tm37ut$1lfhm$1@news1.tnib.de> <3d4a86fc-9794-30bb-4f28-6154caf24cfa@sschwarzer.net>

Show all headers | View raw


On Tue, Nov 29, 2022 at 06:51:17PM +0100, Stefan Schwarzer wrote:
> On 2022-11-28 22:07, Marc Haber wrote:
> > Kann ich die Locks innerhalb der entsprechenden Funktion definieren
> > oder bekomme ich dann in jedem Thread ein eigenes Lock, was der
> > Intention entgegen spricht?
> > 
> > Ist:
> > 
> > foolock = threading.Lock()
> > def foo:
> >      with foolock:
> >          (tue Dinge mit foo, potenziell multithreaded)
> > 
> > dasselbe wie
> > 
> > def foo:
> >      foolock = threading.Lock()
> >      with foolock:
> >          (tue Dinge mit foo, potenziell multithreaded)
> > 
> > ?
> 
> Die Ansätze sind _nicht_ gleichwertig. Wie du richtig
> erkannt/vermutet hast, definierst du im zweiten Ansatz bei
> Ausführung von `foo` "on the fly" ein Lock-Objekt.

Dann muss ich hier mit globalen Locks arbeiten?

> > Ist die in
> > https://www.bogotobogo.com/python/Multithread/python_multithreading_Using_Locks_with_statement_Context_Manager.php
> > und
> > https://www.pythontutorial.net/python-concurrency/python-threading-lock/
> > verwendete Schreibweise, wo das Lock als Parameter mit in die Funktion
> > hineingereicht wird, wirklich "schönes" Python?
> 
> Allgemein würde ich nicht `acquire` und `release` explizit
> verwenden beziehungsweise die meisten der Situationen, wo
> man `acquire` und `release` verwendet, können mit einem
> `with some_lock:` übersichtlicher geschrieben werden.

Ja, das ist mir auch sympathischer.

> Ein weiterer Ansatz ist, Queues zur Synchronisation zu
> verwenden, was tendenziell deutlich weniger fehleranfällig
> ist.

Das könnte für die vorliegende Verwendung overkill sein.

Grüße
Marc

-- 
-----------------------------------------------------------------------------
Marc Haber         | "I don't trust Computers. They | Mailadresse im Header
Leimen, Germany    |  lose things."    Winona Ryder | Fon: *49 6224 1600402
Nordisch by Nature |  How to make an American Quilt | Fax: *49 6224 1600421

Back to de.comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Code Style Review Marc Haber <mh+usenetspam1118@zugschl.us> - 2022-11-28 16:19 +0100
  [Python-de] Re: Code Style Review c.buhtz@posteo.jp - 2022-11-28 15:37 +0000
    [Python-de] Re: Code Style Review Christopher Arndt <chris@chrisarndt.de> - 2022-11-28 16:48 +0100
      [Python-de] Re: Code Style Review c.buhtz@posteo.jp - 2022-11-28 19:53 +0000
      Re: [Python-de] Re: Code Style Review Marc Haber <mh+usenetspam1118@zugschl.us> - 2022-11-28 22:07 +0100
        [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-11-29 18:51 +0100
          [Python-de] Re: Code Style Review Marc Haber <mh+python-de@zugschlus.de> - 2022-11-29 21:44 +0100
            [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-11-29 23:16 +0100
    Re: [Python-de] Re: Code Style Review Marc Haber <mh+usenetspam1118@zugschl.us> - 2022-11-28 21:52 +0100
      [Python-de] Re: Code Style Review c.buhtz@posteo.jp - 2022-11-28 22:38 +0000
        Re: [Python-de] Re: Code Style Review Enrik Berkhan <Enrik.Berkhan@inka.de> - 2022-11-29 06:03 +0000
        Re: [Python-de] Re: Code Style Review Marc Haber <mh+usenetspam1118@zugschl.us> - 2022-11-29 15:22 +0100
          [Python-de] Re: Code Style Review c.buhtz@posteo.jp - 2022-11-29 14:39 +0000
      [Python-de] Re: Code Style Review Matthias Urlichs <matthias.urlichs@noris.de> - 2022-11-30 10:47 +0000
        [Python-de] Re: Code Style Review Marc Haber <mh+python-de@zugschlus.de> - 2022-12-01 21:30 +0100
          [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-12-02 00:07 +0100
            Re: [Python-de] Re: Code Style Review "Peter J. Holzer" <hjp-usenet3@hjp.at> - 2022-12-03 14:32 +0100
          [Python-de] Re: Code Style Review Matthias Urlichs <matthias.urlichs@noris.de> - 2022-12-02 09:29 +0000
            [Python-de] Re: Code Style Review Marc Haber <mh+python-de@zugschlus.de> - 2022-12-02 18:02 +0100
    [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-11-29 18:33 +0100
  [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-11-29 18:18 +0100
    [Python-de] Re: Code Style Review Hans-Peter Jansen <hpj@urpla.net> - 2022-11-30 15:52 +0100
    [Python-de] Re: Code Style Review Marc Haber <mh+python-de@zugschlus.de> - 2022-12-01 21:16 +0100
      [Python-de] Re: Code Style Review Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2022-12-01 23:58 +0100
        [Python-de] Re: Code Style Review Marc Haber <mh+python-de@zugschlus.de> - 2022-12-02 18:10 +0100
          Re: [Python-de] Re: Code Style Review "Peter J. Holzer" <hjp-usenet3@hjp.at> - 2022-12-03 14:36 +0100

csiph-web