Re[32]: C++ illegal instruction
От: Pzz Россия https://github.com/alexpevzner
Дата: 09.08.25 10:35
Оценка:
Здравствуйте, so5team, Вы писали:

S>Но 1000000 итераций мы все равно будем вынуждены делать, т.к. снаружи наличие этого sticky error будет видно только в момент коммита.


type writer struct {
    err error // Sticky error
    . . .
}

func (w *writer) add(v value) error {
    if w.err {
        return w.err
    }

    // Do add logic
    w.err = do_add_logic(...)

    return w.err
}

func (w *writer) commit() error {
    if w.err == nil {
        w.err = do_commit_logic(...)
    }

    return w.err
}

func add_million_values(w *writer, src source) error {
    var err error
    for err == nil {
        var v value
        v, err = src.next()
        if err == nil {
            err = w.add(v)
        }
    }

    if err == nil {
        err = w.commit()
    }

    return err
}

func add_grouped_values(w *writer, values vgroup) error {
    w.add(values.v1)
    w.add(values.v2)
    w.add(values.v3)
    return w.commit()
}


S>Не удивлюсь, если у вас в прошлом отличное образование математика или физика.


В автобусе интеллигент обращается к жлобу:
— Не будете ли вы так любезны передать мой билетик на компостер,
пожалуйста.
— Ты че, е мое, на х, интеллигент, что ли?
— Нет-нет, что вы, отнюдь, я такое же быдло, как и вы.

 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.