Click here to Skip to main content
15,887,214 members
Home / Discussions / C#
   

C#

 
AnswerRe: Atomicity in C# Pin
gggustafson16-May-13 11:45
mvagggustafson16-May-13 11:45 
AnswerRe: Atomicity in C# Pin
Matt T Heffron16-May-13 12:05
professionalMatt T Heffron16-May-13 12:05 
GeneralRe: Atomicity in C# Pin
gggustafson17-May-13 5:32
mvagggustafson17-May-13 5:32 
GeneralRe: Atomicity in C# Pin
Dave Kreskowiak17-May-13 7:49
mveDave Kreskowiak17-May-13 7:49 
GeneralRe: Atomicity in C# Pin
gggustafson17-May-13 7:59
mvagggustafson17-May-13 7:59 
GeneralRe: Atomicity in C# Pin
Dave Kreskowiak17-May-13 9:40
mveDave Kreskowiak17-May-13 9:40 
GeneralRe: Atomicity in C# Pin
gggustafson17-May-13 10:11
mvagggustafson17-May-13 10:11 
AnswerRe: Atomicity in C# Pin
AspDotNetDev16-May-13 12:02
protectorAspDotNetDev16-May-13 12:02 
I am not sure what you mean by "atomicity" given your example of what you'd change the code to (putting them on the same like doesn't affect the runtime behavior at all). If you want the operation to by atomic in a thread safety sense, you'd want to use locking, like this:
C#
lock(lockingVariable)
{
  position--;
  bit >= 1;
}

You will also have to ensure anything else that has access to those variables does a similar lock. In this way, you can ensure that one thread isn't accessing the variables when only one of them has been changed.

gggustafson wrote:
I am fiercely against this in a statement body


Why?

gggustafson wrote:
But in this case I think it signals atomicity. Is there a better way to do this?


If you are talking about indicating to other programmers who read the code that the operation is intended to be atomic, could you just put in a comment, such as this?:
C#
// This operation is intended to be atomic.
position--;
bit >>= 1;

If you really want to be explicit, you could do this:
C#
{ // These two operations are intended to be atomic.
  position--;
  bit >>= 1;
}


Sorry if that seems like a silly suggestion, but I really am not sure I understand your question.

GeneralRe: Atomicity in C# Pin
gggustafson17-May-13 6:14
mvagggustafson17-May-13 6:14 
GeneralRe: Atomicity in C# Pin
PIEBALDconsult16-May-13 12:18
mvePIEBALDconsult16-May-13 12:18 
GeneralRe: Atomicity in C# Pin
gggustafson17-May-13 6:20
mvagggustafson17-May-13 6:20 
GeneralRe: Atomicity in C# Pin
Matt T Heffron17-May-13 6:48
professionalMatt T Heffron17-May-13 6:48 
AnswerRe: Atomicity in C# Pin
Pete O'Hanlon17-May-13 0:43
mvePete O'Hanlon17-May-13 0:43 
GeneralRe: Atomicity in C# Pin
gggustafson17-May-13 6:34
mvagggustafson17-May-13 6:34 
GeneralRe: Atomicity in C# Pin
PIEBALDconsult17-May-13 6:47
mvePIEBALDconsult17-May-13 6:47 
GeneralRe: Atomicity in C# Pin
gggustafson17-May-13 6:55
mvagggustafson17-May-13 6:55 
QuestionHow do tell if a Forms icon is set to the default Visual Studio Icon or my own icon Pin
MarkB12316-May-13 6:35
MarkB12316-May-13 6:35 
AnswerRe: How do tell if a Forms icon is set to the default Visual Studio Icon or my own icon Pin
Eddy Vluggen16-May-13 7:01
professionalEddy Vluggen16-May-13 7:01 
GeneralRe: How do tell if a Forms icon is set to the default Visual Studio Icon or my own icon Pin
MarkB12316-May-13 7:21
MarkB12316-May-13 7:21 
GeneralRe: How do tell if a Forms icon is set to the default Visual Studio Icon or my own icon Pin
Eddy Vluggen16-May-13 7:30
professionalEddy Vluggen16-May-13 7:30 
GeneralRe: How do tell if a Forms icon is set to the default Visual Studio Icon or my own icon Pin
MarkB12316-May-13 10:16
MarkB12316-May-13 10:16 
GeneralRe: How do tell if a Forms icon is set to the default Visual Studio Icon or my own icon Pin
Eddy Vluggen16-May-13 11:12
professionalEddy Vluggen16-May-13 11:12 
QuestionFill a datagridview using two data sources Pin
geralson15-May-13 23:28
geralson15-May-13 23:28 
AnswerRe: Fill a datagridview using two data sources Pin
Simon_Whale16-May-13 0:11
Simon_Whale16-May-13 0:11 
AnswerRe: Fill a datagridview using two data sources Pin
Eddy Vluggen16-May-13 3:03
professionalEddy Vluggen16-May-13 3:03 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.