Új hozzászólás Aktív témák
-
joysefke
veterán
válasz
pvt.peter #9576 üzenetére
Szinte biztos, hogy nem atomi, mint ahogyan az "i++" sem atomi, hiába fér bele egy sorba. Az if operatoros verzió amit helyettesíteni akarsz pedig garantáltan nem atomi.
Kérdés, hogy miért van szükséged atomi műveletekre? Az atomi műveleteket biztosító C# osztályt egyébként itt találod: Interlocked Class (System.Threading) | Microsoft Docs
Miért nem használasz egy "shared nothing" megközelítést ahol az adott konkurens metódusaid semmilyen közösen használt változót/adatot nem használnak? Vagy miért nem lockolsz valamilyen szemafor konstrukcióval a kritkus kódon (kritkus kód == írás művelet bármilyen közös változón)
SZERK
ezt dobta a kereső:
What are Atomic operations and what are not?
In C# Specification, the stamement about atomic operation is:
“Reads and writes of the following data types shall be atomic: bool, char, byte, sbyte, short, ushort, uint, int, float, and reference types.” Also: “…there is no guarantee of atomic read-modify-write, such as in the case of increment or decrement.”.
a ??= operator szerintem a read-modify-write kategóriába esik... -
bandi0000
nagyúr
-
alratar
addikt
válasz
pvt.peter #7570 üzenetére
Sziasztok,
Ma olyat láttam, hogy nem hittem el!Streamwriter-rel ki akartam írni egy fájlba 304 sort.
Beírtam, hogy Writeline, meg a paramétereket, azt kiír a fájlba 284-et. Abból is utolsó sor csak félig szerepel.
Gondoltam valamit én adtam meg rosszul, így a sorokat kiírattam konzolra, ahova viszont kiírta az összes sort.Most akkor hogy van ez: Mégiscsak én rontok el valamit?
-
Kommy
veterán
válasz
pvt.peter #7055 üzenetére
Erre gondolsz?
System.Data.ConstraintException occurred
HResult=-2146232022
Message=A korlátozások érvényesítése sikertelen. Egy vagy több sor megsérti a nem NULL értékre, az egyediségre vagy az idegen kulcsra vonatkozó korlátozásokat.
Source=System.Data
StackTrace:
a következő helyen: System.Data.DataSet.EnableConstraints()
a következő helyen: System.Data.DataSet.set_EnforceConstraints(Boolean value)
a következő helyen: System.Data.Common.DataAdapter.Fill(DataTable[] dataTables, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
a következő helyen: System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
a következő helyen: System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
a következő helyen: System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
a következő helyen: BMX.DesignatedTableAdapters.DataTable1TableAdapter.Fill(DataTable1DataTable dataTable, Nullable`1 EventID) hely: \\psf\home\Dropbox\BMX_fejlesztes\BMX\BMX\Designated.Designer.cs, sor: 1338
a következő helyen: BMX.Designate.Form2_Load(Object sender, EventArgs e) hely: \\psf\home\Dropbox\BMX_fejlesztes\BMX\BMX\Designate.cs, sor: 24
InnerException:Igazából én a report-nak 1 változót adok át amikor meghívom semmi mást, a többi az belül történik egy SQL lekérdezésből csinál egy táblázatot.
-
Jester01
veterán
válasz
pvt.peter #7036 üzenetére
Esélyes, hogy a fordító mind a kettőből ugyanazt a kódot gyártja (common subexpression elimination), de a második mindenképpen jobb. Ez nem olyan eset ahol van érv és ellenérv is. A második jobban átlátható, kevesebb gépelés és a fordítónak is könnyebb dolga van vele. Az elsőnek pont semmi előnye nincs.
Amúgy pedig erre a switch való és ha a null-t nem kezeled le akkor nem használjuk az as operátort, inkább a C-style castot mivel az értelmesebb kivételt dob. Önmagában már az is erősen gyanút kelt, hogy egyáltalán konvertálni kell, valami valószínűleg nem jó a designnal ha ez így van.
-
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Samsung Odyssey G6 S27BG650EU - 27" QHD 2K 240Hz Ivelt - Gaming monitor - 1,5 év Gyári garancia
- Xiaomi Redmi Note 13 256GB, Kártyafüggetlen, 1 Év Garanciával
- LG 27GP95RP - 27" Nano IPS - UHD 4K - 160Hz 1ms - NVIDIA G-Sync - FreeSync Premium PRO - HDR 600
- Bowers/Wilkins Px7 S2 fejhallgatók
- BESZÁMÍTÁS! Gigabyte Z370M i5 9400F 16GB DDR4 512GB SSD RX 5700XT 8GB ZALMAN S2 TG Corsair S650W
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest